Open source at Fastly
We have a lot of code and we love to see people using it to do great things. All the code examples you can find on this website are available to use with permissive licences, and larger codebases are hosted on GitHub. Check out our GitHub organization profile, or take a look at some of our releases here.
Featured projects
Our most high profile open source projects are well supported and continue to be actively developed:
fastly/cli
Build, deploy and configure Fastly services from your terminalfastly/Viceroy
Viceroy provides local testing for developers working with Compute.fastly/pushpin
A proxy server for adding push to your API, used at the core of Fastly's Fanout servicefastly/vscode-fastly-vcl
A Visual Studio Code extension which adds syntax highlighting for Fastly Varnish Configuration Language (VCL) files.
All projects
See understanding topics and support levels for more details of how we organize and support our open source code.
Repository | Type | Support level |
---|---|---|
cli Build, deploy and configure Fastly services from your terminal | Tool | Product |
compute-sdk-go Go SDK for building Fastly Compute applications | Compute SDK | Product |
js-compute-runtime JavaScript SDK and runtime for building Fastly Compute applications | Compute SDK | Product |
Viceroy Viceroy provides local testing for developers working with Compute. | Tool | Product |
compute-actions GitHub Actions for building on Fastly Compute. | Plugin | OSS Tier 1 |
compute-hibp-filter Fastly Compute enrichment to detect compromised passwords | Demo | OSS Tier 1 |
compute-starter-kit-go-default Default package template for Go based Fastly Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-go-kv-store Starter kit demonstrating how to use the Fastly KV store from within a Go-based Fastly compute project. | Compute starter | OSS Tier 1 |
compute-starter-kit-go-tinygo Package template for TinyGo-based Fastly Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-default Default package template for JavaScript based Fastly Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-empty Empty package template for JavaScript based Fastly Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-expressly A lightweight starter kit for Fastly Compute, demonstrating the expressly framework. | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-fanout-forward A Fastly Compute JavaScript Starter Kit for forwarding through Fanout | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-openapi-validation OpenAPI Validation Starter Kit for Fastly Compute (JavaScript) | Compute starter | OSS Tier 1 |
compute-starter-kit-javascript-queue Queuing package template for JavaScript based Fastly Compute projects. Park your users in a virtual queue to reduce the demand on your origins during peak times. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-beacon-termination Beacon Termination package template for Rust based Fastly Compute projects. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-connect-google-bigquery Google BigQuery package template for Rust based Fastly Compute projects. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-default Default package template for Rust based Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-empty Empty package template for Rust based Fastly Compute projects | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-fanout Fanout package template for Rust based Fastly Compute projects. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-fanout-forward Fanout forward starter kit for Fastly Compute (Rust) | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-kv-store Starter kit demonstrating how to use the Fastly KV store from within a Rust-based Fastly compute project. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-static-content Static content starter kit for Rust based Fastly Compute projects. Speed up your websites with a Compute application serving content from a static bucket, redirects, security and performance headers, and a 404 page. | Compute starter | OSS Tier 1 |
compute-starter-kit-rust-websockets WebSockets starter kit for Fastly Compute (Rust) | Compute starter | OSS Tier 1 |
compute-starter-kit-typescript A simple Fastly starter kit for Typescript | Compute starter | OSS Tier 1 |
compute-starter-kit-typescript-kv-store Starter kit demonstrating how to use the Fastly KV store from within a TypeScript compute project. | Compute starter | OSS Tier 1 |
esi A streaming Edge Side Includes parser and executor designed for Fastly Compute. | Compute library | OSS Tier 1 |
expressly Express style router for Fastly Compute | Compute library | OSS Tier 1 |
fastly-exporter A Prometheus exporter for the Fastly Real-time Analytics API | Tool | OSS Tier 1 |
fastly-magento2 Module for integrating Fastly CDN with Magento 2 installations | Plugin | OSS Tier 1 |
go-fastly A Fastly API client for Go | API client | OSS Tier 1 |
terraform-provider-fastly Terraform Fastly provider | Plugin | OSS Tier 1 |
CaptchaOnEdge A Rust app that generates a captcha and saves a signed token in a cookie which is used to verify the captcha when it is resolved. It's completely stateless and runs entirely on Fastly's Compute serverless platform | Demo | OSS Tier 2 |
compute-js-apiclarity compute-js-apiclarity | Tool | OSS Tier 2 |
compute-js-auth OAuth 2.0 implementation for Fastly Compute, in JavaScript | Demo | OSS Tier 2 |
compute-js-esi An implementation of ESI (Edge Side Includes) for Fastly Compute JavaScript | Compute library | OSS Tier 2 |
compute-js-opentelemetry An implementation of OpenTelemetry for Fastly Compute | Compute library | OSS Tier 2 |
compute-js-static-publish Static Publisher for Fastly Compute JavaScript | Tool | OSS Tier 2 |
compute-ll-hls Fastly Compute application for LL-HLS playlist manipulation. | Demo | OSS Tier 2 |
compute-rust-auth Authentication at Fastly's edge, using OAuth 2.0, OpenID Connect, and Fastly Compute. | Compute starter | OSS Tier 2 |
compute-rust-sentry Send error reports from Rust Fastly Compute services to Sentry. | Compute library | OSS Tier 2 |
compute-segmented-caching Segmented Caching as a Fastly Compute app | Demo | OSS Tier 2 |
compute-starter-kit-javascript-remix Remix Template for JavaScript based Fastly Compute projects | Compute starter | OSS Tier 2 |
demo-fiddle-ci Using Fastly Fiddle to enable CI testing of Fastly services | Demo | OSS Tier 2 |
edgeml-recommender POC: similarity search recommendation engine at the edge using only Fastly Compute & Rust | Demo | OSS Tier 2 |
fanout-chat-demo Demonstrates the use of Fastly Fanout to maintain a chat system and send update messages across devices in real time. | Demo | OSS Tier 2 |
fanout-compute-js-demo Fanout Fastly Compute JavaScript demo | Demo | OSS Tier 2 |
fanout-leaderboard-demo Leaderboard Demo for Fastly Fanout | Demo | OSS Tier 2 |
fastly-go A Fastly API client for Go | API client | OSS Tier 2 |
fastly-js A Fastly API client for JavaScript | API client | OSS Tier 2 |
fastly-perl A Fastly API client for Perl | API client | OSS Tier 2 |
fastly-php A Fastly API client for PHP | API client | OSS Tier 2 |
fastly-py A Fastly API client for Python | API client | OSS Tier 2 |
fastly-ruby A Fastly API client for Ruby | API client | OSS Tier 2 |
fastly-rust A Rust Fastly API client library. | API client | OSS Tier 2 |
graphql-compute-example An example of using GraphQL inside Fastly Compute | Demo | OSS Tier 2 |
heroku-fastly Heroku CLI plugin for Fastly | Plugin | OSS Tier 2 |
http-compute-js Node.js-compatible request and response objects | Compute library | OSS Tier 2 |
js-compute-testing Write JavaScript tests from Node.js, against a local or remote Fastly Compute application | Tool | OSS Tier 2 |
js-serve-grip-expressly Extension of js-serve-grip to work with Expressly | Compute library | OSS Tier 2 |
next-compute-js Run Next.js on Fastly Compute | Compute library | OSS Tier 2 |
next-compute-js-server Implementation of Next.js Server class for Fastly Compute JavaScript | Compute library | OSS Tier 2 |
nextjs-examples Examples for using Next.js on Fastly Compute | Demo | OSS Tier 2 |
remix-compute-js Remix for Fastly Compute JavaScript | Plugin | OSS Tier 2 |
serve-vercel-build-output A runtime environment that executes output that targets the Vercel Build Output API on Fastly Compute | Compute library | OSS Tier 2 |
sigsci-splunk-app Splunk app for Fastly (Signal Sciences) | Plugin | OSS Tier 2 |
sse-demo A demo of a streaming data use case for Fastly | Demo | OSS Tier 2 |
url-shortener A tool makes your message easier to read | Demo | OSS Tier 2 |
vscode-fastly-vcl A Visual Studio Code extension which adds syntax highlighting for Fastly Varnish Configuration Language (VCL) files. | Plugin | OSS Tier 2 |
wafefficacy Measures the effectiveness of your Web Application Firewall (WAF) | Tool | OSS Tier 2 |
WordPress-Plugin The Official Fastly WordPress Plugin | Plugin | OSS Tier 2 |
Understanding topics and support levels
We use GitHub topics to help group our open source repositories into themes:
- Tools: These projects are tools you can run in your own environment, usually to help you interact with Fastly.
- Plugins: Sometimes we release code that can be used with third-party products to help them integrate with Fastly.
- Demos: Applications that you can run on or with Fastly, demonstrating creative uses of the Fastly platform.
- API clients: The Fastly API is accessible over HTTP and therefore any HTTP client (e.g. curl or Postman) will work, but we also provide dedicated adapters for a variety of languages.
- Compute Starter kits: The Fastly Compute platform allows you to run your code on our giant edge network in a variety of languages. Starter kits offer complete example Compute applications that are great for scaffolding new projects.
- Compute SDKs: Run within Fastly Compute and allow you to access platform features from your preferred language. Use our SDK comparison table to understand the differences between SDKs.
- Compute libraries: We've made and open sourced code that you can run on our Compute platform, to help make complex tasks easy.
We also use topics to help you understand how we support and work with the community, and what minimum expectations you can have of our open source repositories:
fastly-product | fastly-oss-tier1 | fastly-oss-tier2 | |
---|---|---|---|
Part of Fastly's official products | Actively developed | Maintenance mode | |
Support options | |||
Community support via Fastly Connect | ✅ | ✅ | ✅ |
Public issue tracker | ✅ | ✅ | |
Supported by Fastly customer support | ✅ | ||
Documented in Fastly docs | ✅ | ||
Stability | |||
Development cadence | Continual | Regular | Sporadic |
Critical dependency updates | Proactive | Proactive | Reactive |
Critical fixes | ✅ | ✅ | |
Works in Fiddle if applicable | ✅ | ✅ | |
Maintains compatibility with Fastly platform | ✅ | ✅ | |
Compliance | |||
Complies with retirement policy | ✅ |
If a repository is no longer supported at all, we archive it. Archived repositories are not tested and do not receive dependency or security updates.