Skip to content

RITHVIk-BIRWAZ/fullstack-attendance-management-nextjs-react

 
 

Repository files navigation

Here's an updated version of the README.md file that includes the necessary .env information for Kinde and Neon PostgreSQL settings:

Fullstack attendance management in nextjs react

Attend Tracker

You can access the deployed version of the this app here: https://attend-tracker.vercel.app

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.js. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Project Overview

This project tracks student attendance and provides a dashboard with various features for teachers.

1. Frontend:

  • React.js
  • Next.js
  • Tailwind CSS
  • ShadCN UI Components

2. Backend:

  • Drizzle ORM
  • Neon PostgreSQL
  • Authentication via Kinde (for user login and social authentication)

3. Libraries & Utilities:

  • Recharts Library
  • ShadCN for additional UI components

4. Development Tools:

  • IDE: Visual Studio Code (VS Code)
  • Package Managers: Node.js (npm or yarn)

Features

1. Login Page:

  • Teachers can log in with their email ID and password to access the dashboard. image

2. Dashboard Page:

  • Displays the percentage of students present or absent in a particular grade (standard) in a graphical format. image

3. Student Page:

  • Shows information about students such as their ID, name, address, and contact number. Teachers can also add or delete student records. image

4. Add New Student:

  • Allows teachers to add new students with basic details such as ID, name, address, and contact number. image

5. Delete Student:

  • Teachers can delete existing student records. image

6. Attendance Page:

  • Teachers can mark attendance by selecting the date and grade. They can also modify previously marked attendance. image

7. Generate Report:

  • Teachers can download an attendance report for students in a particular class. The report includes relevant attendance details. image

8. Settings Page:

  • Displays the teacher's information, including their name and email address. image

Environment Variables

To run this project locally, create a .env file in the root of the project and add the following variables:

Kinde Settings (Authentication):

KINDE_CLIENT_ID=your_kinde_client_id
KINDE_CLIENT_SECRET=your_kinde_client_secret
KINDE_ISSUER_URL=https://your_kinde_issuer_url
KINDE_SITE_URL=http://localhost:3000
KINDE_POST_LOGOUT_REDIRECT_URL=http://localhost:3000
KINDE_POST_LOGIN_REDIRECT_URL=http://localhost:3000/dashboard
  • Replace your_kinde_client_id with your actual Kinde Client ID.
  • Replace your_kinde_client_secret with your actual Kinde Client Secret.
  • Replace https://your_kinde_issuer_url with your Kinde Issuer URL.

Neon PostgreSQL Database Settings:

NEXT_PUBLIC_DATABASE_URL=postgresql://your_db_user:your_db_password@your_neon_db_host/your_db_name?sslmode=require
  • Replace your_db_user with your Neon PostgreSQL username.
  • Replace your_db_password with your Neon PostgreSQL password.
  • Replace your_neon_db_host with the Neon database host URL (e.g., ep-your-db-name.neon.tech).
  • Replace your_db_name with the name of your database.

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

You can access the deployed version of the app here: https://attend-tracker.vercel.app

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!


### Key Points:

- The **Kinde Settings** section contains placeholders for the Kinde authentication details (Client ID, Client Secret, Issuer URL, and Redirect URLs).
- The **Neon PostgreSQL Database Settings** section provides a template for connecting to your Neon PostgreSQL database.
- Make sure to replace the placeholders in the `.env` file with your actual Kinde and Neon credentials.

This `.env` configuration ensures proper authentication and database connectivity in both local development and production environments.

About

Build a full-stack Student Attendance Management system using Next.js, React, PostgreSQL, Tailwind CSS, and a REST API. This project covers user authentication, student record management, attendance tracking, a modern dashboard, and interactive charts. Learn full-stack development with a hands-on approach!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 96.9%
  • CSS 3.1%