Student productivity app for managing subjects, tasks, exams, and class schedules.
Frontend:
- React 19 + TypeScript
- Vite
- Tailwind CSS
- Radix UI + shadcn/ui components
- Zustand (state management)
- React Router
Backend:
- Django 5.0 + Django REST Framework
- SimpleJWT (authentication)
- SQLite (dev) / PostgreSQL (prod)
cd backend
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Linux/Mac
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver 5000cd frontend
npm install
npm run devFrontend runs on http://localhost:5173, backend on http://localhost:5000.
| Endpoint | Methods | Description |
|---|---|---|
/api/Auth/register |
POST | Register user |
/api/Auth/login |
POST | Login user |
/api/Subjects |
GET, POST | List/create subjects |
/api/Tasks |
GET, POST | List/create tasks |
/api/Exams |
GET, POST | List/create exams |
/api/Schedule |
GET, POST | List/create schedule entries |
/api/Terms |
GET, POST | List/create terms |
/api/Calendar |
GET | Combined tasks/exams view |
studylife/
├── src/ # React frontend
│ ├── components/
│ ├── pages/
│ ├── services/api.ts
│ └── hooks/
├── django_backend/
│ ├── apps/
│ │ ├── accounts/ # User auth
│ │ ├── subjects/
│ │ ├── tasks/
│ │ ├── exams/
│ │ ├── schedule/
│ │ ├── terms/
│ │ └── calendar_events/
│ └── config/
│ └── settings/
└── package.json