UniTrackApp / dashboard

📊 Attendance monitoring platform for universities with powerful data analytics and visualizations. Built with Next.js.
https://unitrack-dashboard.vercel.app
GNU General Public License v3.0
5 stars 1 forks source link
analytics analytics-platform app-router-nextjs attendance-monitoring education next-auth nextjs postgres prisma radix-ui react rsc shadcn-ui t3-stack tailwindcss trpc typescript university
![unitrack-compressed](https://github.com/user-attachments/assets/dfaafa5d-691f-40c0-96e0-9d764341c426) # 📊 UniTrack: Attendance Monitoring Platform for Universities

Easily track and analyze student attendance through a robust dashboard. Gain valuable insights and manage academic administration more effectively with powerful data analytics and visualizations.

Introduction   ✦   Features   ✦   Tech Stack   ✦   Directory Structure   ✦   Getting Started   ✦   Roadmap ![Next JS](https://img.shields.io/badge/Next.JS-black?style=for-the-badge&logo=next.js&logoColor=white) ![React](https://img.shields.io/badge/react-black?style=for-the-badge&logo=react&logoColor=%2361DAFB) ![Prisma](https://img.shields.io/badge/Prisma-black?style=for-the-badge&logo=Prisma&logoColor=3982CE) ![tRPC](https://img.shields.io/badge/tRPC-black.svg?style=for-the-badge&logo=tRPC&logoColor=2596BE) ![TailwindCSS](https://img.shields.io/badge/tailwind-black?style=for-the-badge&logo=tailwind-css&logoColor=2338B2AC) ![shadcn/ui](https://img.shields.io/badge/shadcn/ui-black?style=for-the-badge&logo=shadcnui&logoColor=white) ![Vercel](https://img.shields.io/badge/Vercel-black?style=for-the-badge&logo=vercel&logoColor=white) ![Railway](https://img.shields.io/badge/Railway-black?style=for-the-badge&logo=Railway&logoColor=white)

📝 Introduction

UniTrack Dashboard is an admin tool for tracking and analyzing student attendance in universities. It offers a user-friendly interface for managing students, classes, and lectures, with detailed attendance analytics. Built with Next.js, Tailwind CSS, and Prisma.

✨ Features

🛠️ Tech Stack

📂 Project Structure

.
├── .github              # GitHub Actions CI/CD workflows
│    └── workflows
│        ├── build       # Build the project on every push to the main branch
│        └── lint-pr     # Lint PR titles to enforce conventional commits
│
├── .vscode              # Recommended extensions and settings for VSCode
├── prisma               # Prisma schema and migrations
│
├── src                  # Main source code
│   ├── app              # Next.js App Router directory for pages and API routes
│   │     └── api        # API routes for the attendance scanner hardware units
│   ├── components       # UI and shared components, with shadcn-ui
│   ├── lib              # Shared utility functions and hooks
│   ├── pages            # (deprecated) Next.js Pages Router directory
│   ├── server           # tRPC Routers, Prisma Client, and NextAuth server-side code
│   │     └── routers    # tRPC Procedures for type-safe API endpoints
│   ├── styles           # Global styles, Tailwind CSS configuration, and custom font imports
│   ├── types            # Shared TypeScript types and Zod schemas for validation
│   └── env.mjs          # Type-safe environment variables using t3-env
│
├── docker-compose.yml   # Docker Compose file for local development databases
├── .nvmrc               # Node Version Manager (nvm/fnm) file for setting a specific Node version
└── package.json         # Project metadata and dependencies

🚀 Getting Started

Prerequisites

Installation

  1. Clone the repository:
git clone https://github.com/UniTrackApp/dashboard.git
cd dashboard
  1. Install dependencies:
npm install
  1. Set up environment variables by copying .env.example to .env and adding your credentials:
cp .env.example .env
  1. Apply database migrations:
npx prisma migrate dev
  1. Run the development server:
npm run dev
  1. Open http://localhost:3000 to view the app in your browser.

✌️ Team

🎯 Roadmap

🔑 License