Gleam Lustre Fullstack Atproto Demo App w/Slices.Network GraphQL API

add db config

Changed files
+18 -1
server
+7
fly.toml
··· 8 8 9 9 [build] 10 10 11 + [env] 12 + DATABASE_URL = '/data/sessions.db' 13 + 11 14 [http_service] 12 15 internal_port = 8080 13 16 force_https = true ··· 15 18 auto_start_machines = true 16 19 min_machines_running = 0 17 20 processes = ['app'] 21 + 22 + [[mounts]] 23 + source = 'app_data' 24 + destination = '/data' 18 25 19 26 [[vm]] 20 27 memory = '512mb'
+4
server/.env.example
··· 11 11 # Port the server will listen on (defaults to 3000 if not set) 12 12 PORT=3000 13 13 14 + # Database Configuration 15 + # SQLite database file path (defaults to ./sessions.db if not set) 16 + DATABASE_URL=./sessions.db 17 + 14 18 # OAuth Configuration 15 19 # These values will be used if environment variables are not set 16 20
+7 -1
server/src/server.gleam
··· 79 79 let assert Ok(priv_directory) = wisp.priv_directory("server") 80 80 let static_directory = priv_directory <> "/static" 81 81 82 + // Get database URL from environment or default to ./sessions.db 83 + let database_url = case envoy.get("DATABASE_URL") { 84 + Ok(url) -> url 85 + Error(_) -> "./sessions.db" 86 + } 87 + 82 88 // Initialize database 83 - use db <- sqlight.with_connection("./sessions.db") 89 + use db <- sqlight.with_connection(database_url) 84 90 let assert Ok(_) = session.init_db(db) 85 91 86 92 // Get host from environment or default to 127.0.0.1