minhtrannhat 3636affd18
Feat(Frontend): added ThemeProvider
- ThemeProvider will change the default Material UI looks. CSSBaseline
  in ThemeProvider will reset and normalize the browser's styling,
  making sure our app looks the same in any browser.
- ThemeProvider will be used as the parent of any styled components.
2023-07-21 17:57:13 -04:00
2022-11-18 16:08:50 -05:00
2023-07-21 15:51:14 -04:00

Todo API

Frontend

Development Workflow

  • Format, lint and test with npm run {format, lint, test}.

Dependencies

  • React
  • React helment async: manage changes to document head.
  • Material UI
  • Roboto font

Frontend Technical Write-up

Inside the frontend/ folder

Backend

Development Workflow

  • Depends on the state of the database, run pdm run recreate-db to regenerate database.
  • 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 to get into the backend python virtual environment.
  • Run tests, lints, formats with pdm run {test, lint, format}.

Dependencies

Python dependencies

  • quart: a micro-webframework, async version of Flask.
  • 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).
  • bcrypt: Hashing and salting password.
  • zxcvbn: Test password strength.
  • freezegun: Check for expired token.
  • quart-rate-limiter: Rate limiting.
  • pydantic and quart-schema: Request/Response validation.
  • httpx: send HTTP POST requests from our app.

SQL Dev-deps

  • bandit: Check for SQL injection vulnerabilities.

Miscs Dev-deps

  • djhtml: Generate jinja templates html for emails.

Backend Technical Write-up

Inside the backend/ folder

Description
A todo API but using all new python web technologies
Readme 2.3 MiB
Languages
TypeScript 54.3%
Python 38.1%
HTML 4.1%
Dockerfile 1.2%
CSS 1.1%
Other 1.2%