The goal is to learn the basics of Python and build a web app with it. The topics to learn, in no particular order, are:
- Docker setup:
- Python/Sanic
- Nginx Config
- Postgresql
- Compose with docker-compose.yml
- Sanic exploration:
- Read Documentation
- Load .env
- Serve static files
- Move routes in separate file
- Move handlers in controllers
- Add middlewares
- Add POST routes
- Add SQLAlchemist:
- Make a singleton instance
- Create a config class for the connection
- Use context to retrieve/instantiate connection
- Add migrations:
- Migration folder
- Migration command/process
- Add Models
- Add Repositories
- Add Pydantic
- Read Documentation
- Add models
- Add email validation
- Add more models
- Add Error handling
- Add Basic Auth
- Add other design patterns (Optionals)
- Python Basics
- Lists
- Dictionaries
- Decorators
- Tuples
- Sets
- Frozen Sets
- Strings
- NoneType
- Bytes and Bytearrays
- Add auth0 implementation (Bonus)
- Configuration
- Setup
- Tenant config and import
- Full login