# Minimal Configuration Example
# This is the smallest possible configuration for running Rustelo
# Includes only essential features for basic functionality

[server]
protocol = "http"
host = "127.0.0.1"
port = 3030
environment = "development"
log_level = "info"

[app]
name = "Rustelo-minimal"
version = "0.1.0"
debug = false
enable_metrics = false
enable_health_check = true
enable_compression = false
max_request_size = 1048576  # 1MB

[database]
url = "sqlite//:minimal.db"
max_connections = 3
min_connections = 1
connect_timeout = 10
idle_timeout = 300
max_lifetime = 900

[session]
secret = "minimal-session-secret-change-this"
cookie_name = "session_id"
cookie_http_only = true
cookie_same_site = "lax"
max_age = 1800  # 30 minutes

[security]
enable_csrf = true
csrf_token_name = "csrf_token"
rate_limit_requests = 50
rate_limit_window = 60
bcrypt_cost = 10

[cors]
allowed_origins = ["http://localhost:3030"]
allowed_methods = ["GET", "POST"]
allowed_headers = ["Content-Type"]
allow_credentials = true
max_age = 600

[static]
assets_dir = "public"
site_root = "target/site"
site_pkg_dir = "pkg"

[server_dirs]
public_dir = "public"
uploads_dir = "uploads"
logs_dir = "logs"
temp_dir = "tmp"
cache_dir = "cache"

[logging]
format = "text"
level = "info"
enable_console = true
enable_file = false

[features]
auth = false
tls = false
content_db = false
two_factor_auth = false

[build]
features = ["crypto"]
