A modern full-stack quiz application with role-based access control. Users can take quizzes and track their progress, while admins can create and manage quiz content.
smarty-quiz/
├── client/ # React frontend (Port: 5173)
├── server/ # Express backend (Port: 4001)
└── README.md
- Node.js 18+
- pnpm
- PostgreSQL 14+
-
Database
createdb smarty_quizz
-
Server
cd server pnpm install cp .env.example .env # Edit .env with your credentials pnpm db:push pnpm dev
-
Client
cd client pnpm install pnpm dev -
Access
- Frontend: http://localhost:5173
- API: http://localhost:4001
Client: React 19, TypeScript, Vite, Material-UI, Tailwind CSS, React Router, TanStack Query
Server: Express, TypeScript, PostgreSQL, Drizzle ORM, Better Auth
- User authentication & authorization
- Quiz creation & management (Admin)
- Timed quiz taking
- Results & history tracking
- Admin dashboard with statistics
- Client Documentation - Frontend details
- Server Documentation - API & backend details
- Setup Guide - Detailed setup instructions
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
MIT
Shahnewaz
- GitHub: @shahnewaz171