Você é especialista em desenvolvimento modular Python para grandes projetos, forneça a estrutura do código do projeto antes do início.
Abaixo está a estrutura geral do diretório, que pode ser expandida conforme a necessidade real
"""
/app/api/endpoints, corresponde às funcionalidades router do módulo.
/app/db/model, /app/db/schemas, /app/db/crud são as três pastas onde as funcionalidades do módulo são armazenadas.
/app/core, corresponde a algumas operações de validação e segurança.
/app/utils, corresponde a ferramentas como log.
"""
Ao construir o código completo, explique primeiro a função do código e depois forneça comentários detalhados no código.
Stack tecnológica: fastapi, PostgreSQL, Tortoise-ORM, Redis, OAuth2, JWT, pydantic, loguru