How giorgibaramidze/fastapi-social-network works
This is a FastAPI blog application whose inspected runtime currently exposes an account-registration and email-verification flow: HTTP requests reach auth routes, which delegate to an auth service and persist user, profile, and verification-token state before sending verification email. The model and repository modules also define session and user/profile state. README content is empty, and user routes/services plus several integrations were not sampled, so those areas are shown only where the source index supports them; no broader blog-content workflow is inferred.
Main entry points: services.py Auth Service · routes.py Auth Routes · users/models.py User Model · auth/models.py Auth Records
Components 24
API and Auth
- FastAPI App
app/main.py - Auth Routes
app/modules/auth/routes.py - Auth Schemas
app/modules/auth/schemas.py - Auth Dependencies
app/modules/auth/dependencies.py - Auth Service
app/modules/auth/services.py
Identity Domain
- Domain Enums
app/db/enums.py - User Model
app/modules/users/models.py - User Repository
app/modules/users/repositories.py - User Routes
app/modules/users/routes.py - User Services
app/modules/users/services.py - Profile Model
app/modules/profiles/models.py - Profile Repository
app/modules/profiles/repositories.py - Auth Records
app/modules/auth/models.py - Auth Repositories
app/modules/auth/repositories.py
Application Platform
- Verification Email
app/core/email.py - Security Utilities
app/core/security.py - Settings
app/core/config.py - App Exceptions
app/core/exceptions/base.py - Exception Handlers
app/core/exceptions/handlers.py - DB Session
app/db/session.py - ORM Base
app/db/base.py - Model Mixins
app/db/mixins.py
Other components
- API Client
- Relational Database
Connections 32
- API Client → FastAPI App: sends requests
- FastAPI App → Auth Routes: registers routes
app/main.py - FastAPI App → Exception Handlers: registers handlers
app/main.py - Auth Routes → Auth Schemas: uses schemas
app/modules/auth/routes.py - Auth Routes → Auth Dependencies: resolves service
app/modules/auth/routes.py - Auth Routes → DB Session: injects session
app/modules/auth/routes.py - Auth Routes → Auth Service: calls service
app/modules/auth/routes.py - Auth Routes → Verification Email: schedules email
app/modules/auth/routes.py - Auth Service → User Repository: checks and creates
app/modules/auth/services.py - Auth Service → Profile Repository: creates profile
app/modules/auth/services.py - Auth Service → Auth Repositories: manages token
app/modules/auth/services.py - Auth Service → Security Utilities: hashes tokens
app/modules/auth/services.py - Auth Service → Domain Enums: selects token type
app/modules/auth/services.py - Auth Service → Auth Schemas: accepts request
app/modules/auth/services.py - Auth Service → App Exceptions: raises domain errors
app/modules/auth/services.py - Auth Repositories → Auth Records: queries and writes
app/modules/auth/repositories.py - Auth Repositories → Relational Database: reads and writes
app/modules/auth/repositories.py - Profile Repository → Profile Model: creates record
app/modules/profiles/repositories.py - User Repository → User Model: uses model
app/modules/users/repositories.py - Profile Model → User Model: relates to user
app/modules/profiles/models.py - User Model → Auth Records: relates sessions
app/modules/users/models.py - User Model → Domain Enums: uses role enum
app/modules/users/models.py - Auth Records → Domain Enums: uses token enums
app/modules/auth/models.py - Auth Records → User Model: references user
app/modules/auth/models.py - Profile Model → ORM Base: extends base
app/modules/profiles/models.py - User Model → ORM Base: extends base
app/modules/users/models.py - Auth Records → ORM Base: extends base
app/modules/auth/models.py - ORM Base → Model Mixins: inherits mixin
app/db/base.py - DB Session → Settings: loads settings
app/db/session.py - Verification Email → Settings: loads settings
app/core/email.py - Security Utilities → Settings: loads settings
app/core/security.py - Exception Handlers → App Exceptions: handles exceptions
app/core/exceptions/handlers.py