A modern attendance management system for universities that helps administrators track professor attendance and efficiently organize teaching sessions.
This image represents the minimalist and modern design style we're aiming for with Univ-Check ππ.
Univ-Check UI is an open-source project aimed at providing universities with a robust system to manage and track professor attendance. The system enables university administrators to:
- Monitor professor attendance and punctuality
- Organize and schedule courses efficiently
- Generate attendance reports and analytics
- Manage manual attendance validation
- Framework: Next.js 15
- UI Components:
- shadcn/ui
- Origin UI - Beautiful UI components built with Tailwind CSS and React
- React Icons - Using Phosphor Icons (pi) in dualtone style
- Styling: Tailwind CSS 4
- Form Management: React Hook Form
- Validation: Zod
- State Management:
- TanStack Query - Server state
- TanStack Table - Table state management
- Zustand - Client state
- URL State Management: Nuqs - Type-safe URL query state management
- Authentication: Better Auth - Authentication framework
- Node.js 18.x or higher
- pnpm 8.x or higher
- Clone the repository:
git clone https://github.com/tiger-githubb/univ-check-ui.git
cd univ-check-ui
- Install dependencies:
pnpm install
- Run the development server:
pnpm dev
- Open http://localhost:3007 with your browser to see the application.
The project follows a structured organization to maintain scalability and separation of concerns:
src/
βββ app/ # Next.js App Router routes and pages
β βββ auth/ # Authentication routes
β βββ board/ # Main application routes (formerly dashboard)
β βββ ...
βββ components/ # Reusable UI components
β βββ ui/ # Base components (shadcn/ui only)
β βββ enhanced/ # Enhanced shadcn components with logic
β βββ shared/ # Custom shared components
β β βββ navigation/ # Navigation-related components (app.sidebar, search.form, team.switcher)
β β βββ theme/ # Theme-related components (mode-toggle)
β β βββ others/ # Other shared components (feedback.dialog)
β βββ ...
βββ config/ # Global configuration
β βββ constants.ts # Application constants
β βββ messages.ts # Error and success messages
β βββ routes.ts # Centralized route definitions
β βββ navigation-items.tsx # Navigation configuration
βββ hooks/ # Custom React hooks
β βββ queries/ # TanStack Query hooks
β βββ ...
βββ lib/ # Utilities and functions
β βββ utils.ts # Utility functions
βββ schema/ # Validation schemas (Zod)
βββ server/ # Server-side logic
β βββ services/ # Business services
β βββ ...
βββ utils/ # Specific utilities
βββ providers/ # React providers
βββ ...
See CONTRIBUTING.md for detailed information about the project structure and conventions.
For testing purposes, you can use the following credentials:
-
Admin:
- Email: admin@univ-check.fr
- Password: Admin123!
-
Professor:
- Email: professeur@univ-check.fr
- Password: Prof123!
We welcome contributions to the Univ-Check UI project! Please read our Contributing Guide to get started. The guide includes detailed information about:
- Project structure and conventions
- Component organization
- Development workflow
- Code style guidelines
- Configuration and architecture
- Integration with the backend API
- Authentication system
- Dashboard for administrators
- Professor management
- Course scheduling
- Attendance tracking and reporting
- Mobile-responsive design
- Real-time notifications
- User feedback and bug reporting
This project is licensed under the MIT License - see the LICENSE file for details.
All our contributors and supporters are welcome to join us and help us make Univ-Check the best attendance tracking system out there!