Spaces:
Sleeping
Sleeping
| from pydantic_settings import BaseSettings | |
| from pydantic import Field | |
| from typing import Optional | |
| class Settings(BaseSettings): | |
| """ | |
| Application settings loaded from environment variables. | |
| """ | |
| # Database settings | |
| database_url: str = Field(default="postgresql://postgres:postgres@localhost:5432/todoapp", alias="DATABASE_URL") | |
| # Authentication settings | |
| auth_secret: str = Field(default="dev_secret_for_development_do_not_use_in_production", alias="SECRET_KEY") | |
| jwt_algorithm: str = Field(default="HS256", alias="ALGORITHM") | |
| jwt_expiration_minutes: int = Field(default=10080, alias="ACCESS_TOKEN_EXPIRE_MINUTES") # 7 days | |
| # Server settings | |
| server_host: str = Field(default="0.0.0.0", alias="SERVER_HOST") | |
| server_port: int = Field(default=8000, alias="SERVER_PORT") | |
| debug: bool = Field(default=True, alias="DEBUG") | |
| # CORS settings | |
| frontend_url: str = Field(default="https://full-stack-the-evolution-of-todo.vercel.app", alias="FRONTEND_URL") | |
| DATABASE_URL: str = "postgresql://neondb_owner:npg_LE9V4bojIRQD@ep-blue-block-ahgb84lf-pooler.c-3.us-east-1.aws.neon.tech/neondb?sslmode=require&channel_binding=require" | |
| # Authentication settings | |
| AUTH_SECRET: str = "dev_secret_for_development_do_not_use_in_production" | |
| JWT_ALGORITHM: str = "HS256" | |
| JWT_EXPIRATION_MINUTES: int = 10080 # 7 days | |
| # Server settings | |
| SERVER_HOST: str = "0.0.0.0" | |
| SERVER_PORT: int = 8000 | |
| DEBUG: bool = True | |
| # CORS settings | |
| FRONTEND_URL: str = "https://full-stack-the-evolution-of-todo.vercel.app" | |
| class Config: | |
| env_file = ".env" | |
| case_sensitive = True | |
| settings = Settings() |