Skip to content

franciscorode/asyncio_ddd

Repository files navigation

⚡ Asyncio DDD

Example project using asyncio and DDD patterns

💡 Motivation

🎓 Consolidate next patterns and technologies

  • 📦 Asyncio python libraries: fastapi, SQLAlchemy, alembic, aio-pika, etc
  • ♻️ Patterns: SOLID, DDD, CQRS and Event sourcing

💻 Set up

  1. 🐱 Get the repository
git clone git@github.com:imageneratext/asyncio_ddd.git
  1. 🏗️ Create a virtual environment
poetry shell
  1. 📥 Install the dependencies
poetry install
  1. 🔛 Enable pre-commit hooks
pre-commit install

🌎 Create .env file with next variables

  • POSTGRES_DB_NAME
  • POSTGRES_USER
  • POSTGRES_PASSWORD
  • PGPASSWORD
  • EXTERNAL_POSTGRES_PORT
  • APP_ENVIRONMENT
  • ALEMBIC_CONFIG

🚀 Start application

make run

🌐 Web pages

💾 DB migrations management

  • Database changes are managed with ⚗️ alembic, for more ℹ️ details see README

✔️ Test

make up
make test

🧹 Lint

The current linters are ruff and mypy

make lint

🌟 Format

The current code formatter is black

make format

About

⚡ Example python project using asyncio and DDD pattern

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors