A template repo for a rich dev-container for developing a FastAPI backend that deploys to a Docker container.
- A python base devcontainer for a consistent development environment.
- Based on Microsoft's devcontainer spec.
- Uses the host's timezone (
$TZ
) and Github CLI token ($GITHUB_TOKEN
). - If
$GITHUB_TOKEN
is set, it will clone the user'sdotfiles
repository and run itsinstall.sh
after creating the container. See jifalops/dotfiles for an example. - Local shell history is persisted when rebuilding the container.
- Integrated terminals when opened with VS Code:
- Run unit tests and start the local server.
- Hexagonal architecture (ports and adapters) with feature-based modules.
- Static typing and dependency injection.
- All config comes from environment variables.
- Runs locally using docker-compose.yml.
- Works with Postgres, Neo4j (todo), and MongoDB (todo) databases.
- Supports JWT, fastapi-users, and Firebase auth out of the box (todo).
- Github Actions for CI/CD (todo).