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.

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 terminal
  • fastly/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 service
  • fastly/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.

RepoTypeSupport level
cli
Build, deploy and configure Fastly services from your terminal
ToolProduct
compute-sdk-go
Go SDK for building Fastly Compute applications
Compute SDKProduct
js-compute-runtime
JavaScript SDK and runtime for building Fastly Compute applications
Compute SDKProduct
Viceroy
Viceroy provides local testing for developers working with Compute.
ToolProduct
compute-actions
GitHub Actions for building on Fastly Compute.
PluginOSS Tier 1
compute-hibp-filter
Fastly Compute enrichment to detect compromised passwords
DemoOSS Tier 1
compute-starter-kit-go-default
Default package template for Go based Fastly Compute projects
Compute starterOSS 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 starterOSS Tier 1
compute-starter-kit-go-tinygo
Package template for TinyGo-based Fastly Compute projects
Compute starterOSS Tier 1
compute-starter-kit-javascript-default
Default package template for JavaScript based Fastly Compute projects
Compute starterOSS Tier 1
compute-starter-kit-javascript-empty
Empty package template for JavaScript based Fastly Compute projects
Compute starterOSS Tier 1
compute-starter-kit-javascript-expressly
A lightweight starter kit for Fastly Compute, demonstrating the expressly framework.
Compute starterOSS Tier 1
compute-starter-kit-javascript-fanout-forward
A Fastly Compute JavaScript Starter Kit for forwarding through Fanout
Compute starterOSS Tier 1
compute-starter-kit-javascript-openapi-validation
OpenAPI Validation Starter Kit for Fastly Compute (JavaScript)
Compute starterOSS 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 starterOSS Tier 1
compute-starter-kit-javascript-remix
Remix Template for JavaScript based Fastly Compute projects
Compute starterOSS Tier 1
compute-starter-kit-rust-beacon-termination
Beacon Termination package template for Rust based Fastly Compute projects.
Compute starterOSS Tier 1
compute-starter-kit-rust-connect-google-bigquery
Google BigQuery package template for Rust based Fastly Compute projects.
Compute starterOSS Tier 1
compute-starter-kit-rust-default
Default package template for Rust based Compute projects
Compute starterOSS Tier 1
compute-starter-kit-rust-empty
Empty package template for Rust based Fastly Compute projects
Compute starterOSS Tier 1
compute-starter-kit-rust-fanout
Fanout package template for Rust based Fastly Compute projects.
Compute starterOSS Tier 1
compute-starter-kit-rust-fanout-forward
Fanout forward starter kit for Fastly Compute (Rust)
Compute starterOSS 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 starterOSS 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 starterOSS Tier 1
compute-starter-kit-rust-websockets
WebSockets starter kit for Fastly Compute (Rust)
Compute starterOSS Tier 1
compute-starter-kit-typescript
A simple Fastly starter kit for Typescript
Compute starterOSS 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 starterOSS Tier 1
expressly
Express style router for Fastly Compute
Compute libraryOSS Tier 1
fastly-exporter
A Prometheus exporter for the Fastly Real-time Analytics API
ToolOSS Tier 1
fastly-magento
Magento Extension for working with the Fastly Content Delivery Network
PluginOSS Tier 1
fastly-magento2
Module for integrating Fastly CDN with Magento 2 installations
PluginOSS Tier 1
go-fastly
A Fastly API client for Go
API clientOSS Tier 1
insights.js
Real user monitoring of network timing signals using the Open Insights framework
PluginOSS Tier 1
next-compute-js
Run Next.js on Fastly Compute
Compute libraryOSS Tier 1
terraform-provider-fastly
Terraform Fastly provider
PluginOSS Tier 1
compute-js-apiclarity
compute-js-apiclarity
ToolOSS Tier 2
compute-js-auth
OAuth 2.0 implementation for Fastly Compute, in JavaScript
DemoOSS Tier 2
compute-js-esi
An implementation of ESI (Edge Side Includes) for Fastly Compute JavaScript
Compute libraryOSS Tier 2
compute-js-opentelemetry
An implementation of OpenTelemetry for Fastly Compute
Compute libraryOSS Tier 2
compute-js-static-publish
Static Publisher for Fastly Compute JavaScript
ToolOSS Tier 2
compute-ll-hls
Fastly Compute application for LL-HLS playlist manipulation.
DemoOSS Tier 2
compute-rust-auth
Authentication at Fastly's edge, using OAuth 2.0, OpenID Connect, and Fastly Compute.
Compute starterOSS Tier 2
compute-rust-sentry
Send error reports from Rust Fastly Compute services to Sentry.
Compute libraryOSS Tier 2
compute-segmented-caching
Segmented Caching as a Fastly Compute app
DemoOSS Tier 2
demo-fiddle-ci
Using Fastly Fiddle to enable CI testing of Fastly services
DemoOSS 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.
DemoOSS Tier 2
fanout-compute-js-demo
Fanout Fastly Compute JavaScript demo
DemoOSS Tier 2
fanout-leaderboard-demo
Leaderboard Demo for Fastly Fanout
DemoOSS Tier 2
fastly-go
A Fastly API client for Go
API clientOSS Tier 2
fastly-js
A Fastly API client for JavaScript
API clientOSS Tier 2
fastly-perl
A Fastly API client for Perl
API clientOSS Tier 2
fastly-php
A Fastly API client for PHP
API clientOSS Tier 2
fastly-py
A Fastly API client for Python
API clientOSS Tier 2
fastly-ruby
A Fastly API client for Ruby
API clientOSS Tier 2
fastly-rust
A Rust Fastly API client library.
API clientOSS Tier 2
graphql-compute-example
An example of using GraphQL inside Fastly Compute
DemoOSS Tier 2
heroku-fastly
Heroku CLI plugin for Fastly
PluginOSS Tier 2
http-compute-js
Node.js-compatible request and response objects
Compute libraryOSS Tier 2
js-compute-testing
Write JavaScript tests from Node.js, against a local or remote Fastly Compute application
ToolOSS Tier 2
js-grip-compute-js
Extension of js-grip to work with Fastly Compute JavaScript
Compute libraryOSS Tier 2
js-serve-grip-expressly
Extension of js-serve-grip to work with Expressly
Compute libraryOSS Tier 2
next-compute-js-server
Implementation of Next.js Server class for Fastly Compute JavaScript
Compute libraryOSS Tier 2
nextjs-examples
Examples for using Next.js on Fastly Compute
DemoOSS Tier 2
open-insights-provider-fastly
An open-insights provider for Fastly
PluginOSS Tier 2
remix-compute-js
Remix for Fastly Compute JavaScript
PluginOSS Tier 2
serve-vercel-build-output
A runtime environment that executes output that targets the Vercel Build Output API on Fastly Compute
Compute libraryOSS Tier 2
sigsci-splunk-app
Splunk app for Fastly (Signal Sciences)
PluginOSS Tier 2
sse-demo
A demo of a streaming data use case for Fastly
DemoOSS Tier 2
url-shortener
A tool makes your message easier to read
DemoOSS Tier 2
vscode-fastly-vcl
A Visual Studio Code extension which adds syntax highlighting for Fastly Varnish Configuration Language (VCL) files.
PluginOSS Tier 2
wafefficacy
Measures the effectiveness of your Web Application Firewall (WAF)
ToolOSS Tier 2
WordPress-Plugin
The Official Fastly WordPress Plugin
PluginOSS Tier 2

Understanding topics and support levels

We use GitHub topics to help group our open source repos 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 repos:

fastly-productfastly-oss-tier1fastly-oss-tier2
Part of Fastly's official productsActively developedMaintenance mode
Support options
Community support via Fastly Connect
Public issue tracker
Supported by Fastly customer support
Documented in Fastly docs
Stability
Development cadenceContinualRegularSporadic
Critical dependency updatesProactiveProactiveReactive
Critical fixes
Works in Fiddle if applicable
Maintains compatibility with Fastly platform
Compliance
Complies with retirement policy

If a repo is no longer supported at all, we archive it. Archived repos are not tested and do not receive dependency or security updates.

User contributed notes

BETA

Do you see an error in this page? Do you have an interesting use case, example or edge case people should know about? Share your knowledge and help people who are reading this page! (Comments are moderated; for support, please contact Fastly support)