Skip to content

dipexplorer/AADSS

Repository files navigation

Acadence

Academic Attendance Decision Support System

Acadence is a modern, production-grade web application designed to track student daily attendance, manage semester configurations, and provide comprehensive data-driven insights. Built with Next.js 15 (App Router), Tailwind CSS v4, and Supabase, it provides a highly reliable system to orchestrate scalable academic processes.

✨ Key Features

  • Role-Based Access Control: Secure authentication and authorization flows managed entirely by Supabase Auth with server-side enforcement.
  • Attendance Tracking & Simulation: Intuitive interfaces for daily attendance logs, complete with the ability to simulate and process complex attendance scenarios.
  • Semester Organization: Configure academic programs, subjects, sections, and credit structures per semester and per session.
  • Rich Analytical Dashboards: Access detailed calendar visualizations and robust statistical reports for informed operational and academic decisions.
  • Interactive Rich Text Support: Integrated TipTap editor designed for seamless rich text interactions, document handling, and module configurations.
  • Premium UI Experience: Designed with shadcn/ui components and Tailwind CSS 4 to guarantee a responsive, highly polished, and fully accessible dark/light mode experience.

💻 Tech Stack


📂 Project Structure

acadence/
├── app/                  # Next.js App Router (pages, layouts, globals)
│   ├── admin/            # Administrative dashboard and user management routes
│   ├── daily-attendance/ # Core feature for marking attendance
│   ├── login/ & register/# Authentication routes
│   ├── semester-*/       # Semester statistics and configurations workflows
│   └── simulate/         # Attendance simulations/testing utilities
├── components/           # Reusable UI architecture
│   ├── admin/            # Admin-specific user interface elements
│   ├── common/           # Sitewide shared components (navbars, footers, etc.)
│   └── ui/               # Base UI primitives generated by shadcn/ui
├── lib/                  # Application business logic, utils, and Supabase integrations
├── server/               # Server-side specific operations (e.g. auth actions)
├── db/                   # Raw SQL schema definition (Supabase schema.sql) and seed scripts
└── supabase/             # Local Supabase configurations

🚀 Getting Started

Prerequisites

  • Node.js v20.x or higher
  • npm, pnpm, or yarn
  • A Supabase Project (Local or Cloud)

1. Clone the repository

git clone https://github.com/your-username/acadence.git
cd acadence

2. Install dependencies

npm install
# or
yarn install
# or
pnpm install

3. Configure the Environment

Create a .env.local file in the root directory and add your Supabase credentials:

NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key

4. Database Setup

Ensure your Supabase project contains the requisite schema. You can execute the definitions within db/supabase-schema.sql via the Supabase SQL editor or by using the Supabase CLI:

supabase db push
# or run the SQL commands manually from db/supabase-schema.sql

5. Start the Development Server

npm run dev

Open http://localhost:3000 using your browser to see the outcome.


🛠️ Available Commands

  • npm run dev - Starts the development server with Hot Module Replacement.
  • npm run build - Creates an optimized production build.
  • npm run start - Starts the application in production mode.
  • npm run lint - Lints the codebase using ESLint.

📄 License

This project is proprietary. All rights reserved. Let the repository owner know if you'd like to use portions of this codebase for reference.

About

Ongoing Academic Attendance Decision Support System (AADSS) with analytics, built using Next.js and Supabase.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages