2022-11-18 16:08:50 -05:00
# Todo API
## Frontend
### Development dependencies
- `prettier` : Formatter
## Backend
2022-12-10 18:46:51 -05:00
### Development workflow
- Run `eval (pdm venv activate in-project)` (if you are using Fish shell) or `eval $(pdm venv activate in-project)` (if you are using bash/zsh) at the `backend` folder root.
### Dependencies
2022-11-18 16:08:50 -05:00
2022-11-19 15:13:38 -05:00
#### Python dependencies
2022-11-18 16:08:50 -05:00
2022-11-19 15:13:38 -05:00
- `quart` : a micro-webframework, async version of Flask.
2022-12-15 09:40:38 -05:00
- `black` : Code formatter.
- `isort` : Import formatter.
- `mypy` : Type checking.
- `flake8` : General Python bugs.
- `vulture` : Find unused code in Python programs.
- `pytest` : For testing (turbocharged with `async` ).
2022-11-19 15:13:38 -05:00
- `bcrypt` : Hashing and salting password.
- `zxcvbn` : Test password strength.
- `freezegun` : Check for expired token.
2022-12-15 09:40:38 -05:00
- `quart-rate-limiter` : Rate limiting.
- `pydantic` and `quart-schema` : Request/Response validation.
- `httpx` : send HTTP POST requests from our app.
2022-11-18 16:08:50 -05:00
#### SQL Dev-deps
2022-12-15 09:40:38 -05:00
- `bandit` : Check for SQL injection vulnerabilities.
2022-11-18 16:08:50 -05:00
#### Miscs Dev-deps
2022-12-15 09:40:38 -05:00
- `djhtml` : Generate jinja templates html for emails.