Add backend and frontend skeleton

This commit is contained in:
2025-11-26 14:47:36 +01:00
parent 1dc225dd77
commit 7ec9324997
37 changed files with 6973 additions and 119 deletions

View File

@@ -0,0 +1 @@
"""Domain feature modules."""

View File

@@ -0,0 +1 @@
"""Auth feature placeholder."""

View File

@@ -0,0 +1 @@
"""Adapters for auth integrations."""

View File

@@ -0,0 +1,3 @@
"""Placeholder for FastAPI Users integration."""
# Add glue code for FastAPI Users when adopting that library.

View File

@@ -0,0 +1,3 @@
"""Authentication dependencies placeholder."""
# Add FastAPI dependencies (e.g., current_user) when auth is implemented.

View File

@@ -0,0 +1,3 @@
"""Authentication models placeholder."""
# Add ORM models (e.g., SQLAlchemy) when auth is implemented.

View File

@@ -0,0 +1,3 @@
"""Authentication permission placeholder."""
# Define scopes/roles when auth is implemented.

View File

@@ -0,0 +1,11 @@
"""Authentication router placeholder."""
from fastapi import APIRouter
router = APIRouter(prefix="/auth", tags=["auth"])
@router.get("/noop", include_in_schema=False)
def auth_not_implemented() -> dict:
"""Placeholder endpoint to keep router wired."""
return {"status": "not_implemented"}

View File

@@ -0,0 +1,3 @@
"""Authentication schemas placeholder."""
# Add Pydantic models for auth requests/responses when implemented.

View File

@@ -0,0 +1,3 @@
"""Authentication service placeholder."""
# Add token generation/verification logic here.

View File

@@ -0,0 +1 @@
"""Health check feature."""

View File

@@ -0,0 +1,23 @@
"""Health endpoints."""
from fastapi import APIRouter, Depends
from core.config import Settings, get_settings
from features.health.schemas import HealthResponse
router = APIRouter(prefix="/health", tags=["health"])
def build_health_payload(settings: Settings) -> HealthResponse:
"""Build health response payload."""
return HealthResponse(
status="ok",
service=settings.service_name,
environment=settings.environment,
)
@router.get("/", response_model=HealthResponse)
def health(settings: Settings = Depends(get_settings)) -> HealthResponse:
"""Return lightweight health status."""
return build_health_payload(settings)

View File

@@ -0,0 +1,9 @@
"""Pydantic schemas for health responses."""
from pydantic import BaseModel, Field
class HealthResponse(BaseModel):
status: str = Field(default="ok", description="Overall service status.")
service: str = Field(default="backend", description="Service name.")
environment: str = Field(default="development", description="Runtime environment.")