Web application for searching and reviewing schools. Click here to preview.
Project's OpenAPI schema available on path "/static/openapi.json".
Link to API documentation.
Link to Swagger UI.
- Application uses Continuous Delivery solution built upon GitHub Actions and GitHub Container Registry.
- Django
- Django REST Framework
- PostgreSQL
- Google Drive API
- Google Gmail SMTP
- React
- Chakra UI
- SWR
- Sentry
- Docker
- User login
- User registration
- Email account activation
- Token based authentication
- Login endpoint throttling (max 5 req./min)
- Local-memory caching strategy on faculties list and retrieve endpoints
- User password reset and change
- Filtering and searching faculties
- Moderator privileges
- Moderator can add new faculty
- Moderator can update faculties
- Commenting faculties
- Client side generation of PDF
git clone https://github.com/dominikjalowiecki/Studies-Search.git
cd ./Studies-Search
SECRET_KEY=secret_key
DEBUG=True
pip install --user pipenv
pipenv sync --dev
cd ./frontend
npm ci
cd ..
pipenv run migrate
pipenv run run
Requires additional SMTP and Google Drive API key setup.
docker compose -f docker-compose.dev.yaml -p studies-search_dev up -d
Application available on http://localhost:80 for frontend and http://localhost:8000 for backend.