Skip to content

0.1.0: Merge pull request #1 from TTWShell/for-public

Pre-release
Pre-release

Choose a tag to compare

@TTWShell TTWShell released this 04 Feb 09:28
· 247 commits to master since this release
ab246ab

Added

  • Routing: ZodiacAPIRouter with automatic Response[T] wrapping using Pydantic v2 native generics
  • Response: Standard API response model Response[T] with code, data, message fields
  • Exceptions: ZodiacException hierarchy (NotFoundException, BadRequestException, ForbiddenException, UnauthorizedException, ConflictException)
  • Exception Handlers: Centralized handlers for ZodiacException, RequestValidationError, and generic exceptions
  • Middleware: TraceIDMiddleware for request tracing, AccessLogMiddleware for structured access logging
  • Logging: setup_loguru() with JSON format support and Trace ID injection
  • Context: trace_id context variable for cross-cutting request tracing
  • Config: BaseAppSettings with environment-based configuration using Pydantic Settings
  • Database:
    • DatabaseManager singleton for async SQLAlchemy engine/session management
    • BaseSQLRepository with session context manager
    • SQLModel mixins: IntIDMixin, UUIDMixin, SQLDateTimeMixin
  • HTTP: HttpClient async wrapper around httpx with automatic Trace ID propagation
  • Pagination: PageParams request model and PagedResponse[T] response model
  • Schemas: Pydantic mixins: IntIDSchemaMixin, UUIDSchemaMixin, DateTimeSchemaMixin
  • Benchmarks: Performance benchmarks for routing overhead and internal operations
  • Documentation: MkDocs-based API reference and user guide