F# and Fable bindings for Cloudflare Workers Runtime APIs, including R2, KV, D1, Durable Objects, Queues, Vectorize, Hyperdrive, and AI. For use with Fable to compile F# to JavaScript.
$ dotnet add package CloudflareFS.RuntimeF# and Fable bindings for Cloudflare Workers Runtime APIs
Worker-side bindings — Use this package to write Cloudflare Workers in F#. For managing Cloudflare resources from .NET applications, see CloudflareFS.Management.
CloudflareFS.Runtime provides F# type bindings for the APIs available inside a running Cloudflare Worker. These bindings are designed for use with Fable to compile F# to JavaScript that runs on Cloudflare's edge network.
| Service | Description |
|---|---|
| Worker.Context | Core Worker types (Request, Response, Headers, ExecutionContext) |
| KV | Key-value storage |
| R2 | Object storage (S3-compatible) |
| D1 | SQLite database |
| Durable Objects | Stateful serverless compute |
| Queues | Message queues |
| Vectorize | Vector database for AI/ML |
| Hyperdrive | Database connection pooling |
| AI | Workers AI inference |
dotnet add package CloudflareFS.Runtime
open CloudFlare.Worker.Context
open CloudFlare.KV
let handler (request: Request) (env: obj) (ctx: ExecutionContext) =
promise {
// Access KV namespace from environment bindings
let kv = env?MY_KV_NAMESPACE :?> KVNamespace
// Read a value
let! value = kv.get "my-key"
// Return a response
return Response.create($"Value: {value}")
}
MIT OR Apache-2.0