A modern, responsive quiz application built with Next.js, TypeScript, and Shadcn/UI. The app features a comprehensive admin dashboard, quiz management system, and user-friendly interface for students.
- User registration and login
- Role-based access control (Admin/Student)
- Secure session management
- Profile customization
-
Overview Statistics
- Total users count
- Total questions count
- Quizzes taken
- Average scores
- Trend indicators
-
Quick Actions
- Add new questions
- Manage users
- View reports
- Access settings
-
Recent Activity Feed
- New questions added
- User registrations
- Reported questions
- Timestamp tracking
-
Performance Overview
- Subject-wise statistics
- Progress tracking
- Performance metrics
-
Question List
- Search functionality
- Filter by level, subject, and difficulty
- Sort by date added
- Bulk actions
-
Question Details
- Question text
- Level (JHS/SHS)
- Subject
- Difficulty
- Time limit
- Date added
- Status indicators
-
Actions
- Edit questions
- Delete questions
- Toggle status
- View details
-
User List
- Search by name/email
- Filter by role, level, and status
- Sort by join date
- Bulk actions
-
User Details
- Name and email
- Role (Admin/Student)
- Education level
- Account status
- Join date
- Quiz statistics
-
Actions
- Edit user details
- Change user status
- Delete users
- View activity
-
Key Metrics
- Total users
- Total quizzes
- Average scores
- Completion rates
- Trend analysis
-
Subject Performance
- JHS vs SHS comparison
- Subject-wise breakdown
- Progress tracking
- Visual charts
-
Quiz Duration Analysis
- Time spent distribution
- Average completion time
- Performance correlation
-
General Settings
- Site name
- Site description
- Contact email
- Maintenance mode
-
Security Settings
- Two-factor authentication
- Session timeout
- IP blocking
- Session duration
-
Notification Settings
- Email notifications
- Push notifications
- Weekly reports
- Activity alerts
-
User Settings
- Registration control
- Email verification
- Profile customization
- Login attempts
-
JHS Configuration
- Enable/disable level
- Default time limit
- Questions per quiz
- Passing score
- Subject management
-
SHS Configuration
- Enable/disable level
- Default time limit
- Questions per quiz
- Passing score
- Subject management
-
Subject List
- Search functionality
- Filter by level
- Status indicators
- Quick actions
-
Subject Details
- Name and description
- Education level
- Question count
- Quiz count
- Status management
-
Responsive Design
- Mobile-first approach
- Tablet optimization
- Desktop layouts
- Adaptive components
-
Navigation
- Sidebar navigation
- Breadcrumb trails
- Quick access menu
- Mobile menu
-
Visual Feedback
- Loading states
- Success/error messages
- Progress indicators
- Status badges
-
Accessibility
- Keyboard navigation
- Screen reader support
- High contrast mode
- Focus management
- Frontend Framework: Next.js 14
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: Shadcn/UI
- State Management: React Hooks
- Routing: Next.js App Router
- Authentication: NextAuth.js
- Database: (To be implemented)
- API: (To be implemented)
- Clone the repository
- Install dependencies:
npm install # or yarn install # or pnpm install
- Set up environment variables:
cp .env.example .env.local
- Run the development server:
npm run dev # or yarn dev # or pnpm dev
- Open http://localhost:3000
npm run dev: Start development servernpm run build: Build for productionnpm run start: Start production servernpm run lint: Run ESLintnpm run format: Format code with Prettier
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.