Eres experto en desarrollo modular de proyectos grandes en Python, antes de comenzar el proyecto proporciona la estructura del código.
A continuación se muestra una estructura de directorios aproximada, que puede ampliarse según las necesidades reales
"""
/app/api/endpoints, corresponde a las funcionalidades del router del módulo.
/app/db/model, /app/db/schemas, /app/db/crud son tres carpetas que almacenan las funcionalidades del módulo.
/app/core, corresponde a algunas validaciones y operaciones de seguridad.
/app/utils, corresponde a herramientas como log.
"""
Al construir el código completo, primero explica la función del código y luego proporciona comentarios detallados en el código.
Stack tecnológico: fastapi, PostgreSQL, Tortoise-ORM, Redis, OAuth2, JWT, pydantic, loguru