name = "insightflare" main = "./src/server.ts" compatibility_date = "2026-03-01" workers_dev = true compatibility_flags = ["nodejs_compat", "global_fetch_strictly_public"] [vars] SESSION_WINDOW_MINUTES = "30" SCRIPT_CACHE_TTL_SECONDS = "600" PARQUET_WASM_URL = "https://cdn.jsdelivr.net/npm/parquet-wasm@0.7.1/esm/parquet_wasm_bg.wasm" [triggers] crons = ["*/30 * * * *"] [observability] [observability.logs] enabled = true invocation_logs = true [[durable_objects.bindings]] name = "INGEST_DO" class_name = "IngestDurableObject" [[migrations]] tag = "v1" new_sqlite_classes = ["IngestDurableObject"] [[migrations]] tag = "v2" new_sqlite_classes = ["DiagnosticsSampler"] [[migrations]] tag = "v3" deleted_classes = ["DiagnosticsSampler"] [[d1_databases]] binding = "DB" database_name = "insightflare" database_id = "YOUR_D1_ID" # Change this to your own D1 database ID migrations_dir = "./migrations" [[kv_namespaces]] binding = "SITE_SETTINGS_KV" id = "YOUR_KV_ID" # Change this to your own KV namespace ID [[analytics_engine_datasets]] binding = "REQUEST_ANALYTICS" dataset = "insightflare_request_events" [[analytics_engine_datasets]] binding = "TRAFFIC_ANALYTICS" dataset = "insightflare_traffic_events" [[analytics_engine_datasets]] binding = "EVENT_ANALYTICS" dataset = "insightflare_event_facts" # Optional: enable when archive-to-R2 is configured. # [[r2_buckets]] # binding = "ARCHIVE_BUCKET" # bucket_name = "insightflare-archive" # preview_bucket_name = "insightflare-archive-preview" # Maintainer environment. Normal Deploy Button users should use the default # environment above, which intentionally leaves R2 unbound. [env.ravelloh] name = "insightflare" [env.ravelloh.vars] SESSION_WINDOW_MINUTES = "30" SCRIPT_CACHE_TTL_SECONDS = "600" PARQUET_WASM_URL = "https://cdn.jsdelivr.net/npm/parquet-wasm@0.7.1/esm/parquet_wasm_bg.wasm" [env.ravelloh.triggers] crons = ["*/30 * * * *"] [[env.ravelloh.durable_objects.bindings]] name = "INGEST_DO" class_name = "IngestDurableObject" [[env.ravelloh.migrations]] tag = "v1" new_sqlite_classes = ["IngestDurableObject"] [[env.ravelloh.migrations]] tag = "v2" new_sqlite_classes = ["DiagnosticsSampler"] [[env.ravelloh.migrations]] tag = "v3" deleted_classes = ["DiagnosticsSampler"] [[env.ravelloh.d1_databases]] binding = "DB" database_name = "insightflare" database_id = "391c1df6-dd3f-44f0-991c-63c7873b7d6a" migrations_dir = "./migrations" [[env.ravelloh.kv_namespaces]] binding = "SITE_SETTINGS_KV" id = "dbef57f92fc748e4929303ac5153045e" [[env.ravelloh.analytics_engine_datasets]] binding = "REQUEST_ANALYTICS" dataset = "insightflare_request_events" [[env.ravelloh.analytics_engine_datasets]] binding = "TRAFFIC_ANALYTICS" dataset = "insightflare_traffic_events" [[env.ravelloh.analytics_engine_datasets]] binding = "EVENT_ANALYTICS" dataset = "insightflare_event_facts" [[env.ravelloh.r2_buckets]] binding = "ARCHIVE_BUCKET" bucket_name = "insightflare-archive" preview_bucket_name = "insightflare-archive-preview"