serverless #atproto jetstream to webhook connector, powered by cloudflare durable objects
at main 94 lines 2.3 kB view raw
1/** 2 * For more details on how to configure Wrangler, refer to: 3 * https://developers.cloudflare.com/workers/wrangler/configuration/ 4 */ 5{ 6 "$schema": "node_modules/wrangler/config-schema.json", 7 "name": "doing-jetstream", 8 "main": "src/index.ts", 9 "compatibility_date": "2025-05-29", 10 "migrations": [ 11 { 12 "new_sqlite_classes": [ 13 "JetstreamProcessor" 14 ], 15 "tag": "v1" 16 } 17 ], 18 "durable_objects": { 19 "bindings": [ 20 { 21 "class_name": "JetstreamProcessor", 22 "name": "JETSTREAM_PROCESSOR" 23 } 24 ] 25 }, 26 "queues": { 27 "producers": [ 28 { 29 "queue": "jetstream-events", 30 "binding": "JETSTREAM_QUEUE" 31 } 32 ], 33 "consumers": [ 34 { 35 "queue": "jetstream-events", 36 "max_batch_size": 10, 37 "max_batch_timeout": 5, 38 "max_retries": 3, 39 "dead_letter_queue": "jetstream-events-dlq" 40 } 41 ] 42 }, 43 "observability": { 44 "enabled": true 45 }, 46 /** 47 * Smart Placement 48 * Docs: https://developers.cloudflare.com/workers/configuration/smart-placement/#smart-placement 49 */ 50 // "placement": { "mode": "smart" }, 51 52 /** 53 * Bindings 54 * Bindings allow your Worker to interact with resources on the Cloudflare Developer Platform, including 55 * databases, object storage, AI inference, real-time communication and more. 56 * https://developers.cloudflare.com/workers/runtime-apis/bindings/ 57 */ 58 59 /** 60 * Scheduled Events - Keep worker alive 61 * https://developers.cloudflare.com/workers/runtime-apis/scheduled-event/ 62 */ 63 "triggers": [ 64 { 65 "crons": ["*/5 * * * *"] 66 } 67 ], 68 69 /** 70 * Environment Variables and Secrets 71 * https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables 72 * 73 * Note: WEBHOOK_URL and JETSTREAM_COLLECTIONS are now configured via: 74 * - Production: wrangler secret put or environment variables 75 * - Development: .dev.vars file 76 */ 77 78 /** 79 * Note: Secrets are set via CLI and not stored in this file 80 * Set secrets with: wrangler secret put WEBHOOK_BEARER_TOKEN 81 */ 82 83 /** 84 * Static Assets 85 * https://developers.cloudflare.com/workers/static-assets/binding/ 86 */ 87 // "assets": { "directory": "./public/", "binding": "ASSETS" }, 88 89 /** 90 * Service Bindings (communicate between multiple Workers) 91 * https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings 92 */ 93 // "services": [{ "binding": "MY_SERVICE", "service": "my-service" }] 94}