Files
personal-portfolio/portfolio_app/config.py
lmiranda 3ee4c20f5e feat: implement bio landing page with dash-mantine-components
- Full bio page with hero, summary, tech stack, projects, social links
- MantineProvider theme integration in app.py
- Responsive layout using DMC SimpleGrid
- Added dash-iconify for social link icons
- Updated mypy overrides for DMC/iconify modules

Closes #11

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-11 14:43:50 -05:00

35 lines
874 B
Python

"""Application configuration using Pydantic BaseSettings."""
from functools import lru_cache
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings): # type: ignore[misc]
"""Application settings loaded from environment variables."""
model_config = SettingsConfigDict(
env_file=".env",
env_file_encoding="utf-8",
extra="ignore",
)
# Database
database_url: str = "postgresql://portfolio:portfolio_dev@localhost:5432/portfolio"
postgres_user: str = "portfolio"
postgres_password: str = "portfolio_dev"
postgres_db: str = "portfolio"
# Application
dash_debug: bool = True
secret_key: str = "change-me-in-production"
# Logging
log_level: str = "INFO"
@lru_cache
def get_settings() -> Settings:
"""Get cached settings instance."""
return Settings()