✩ Let's Take Back The Net! ✩
Spritely is building the next generation of decentralized networking technology.
We deserve social networks which respect our agency and autonomy. Communities deserve the right to organize, govern, and protect and enrich their members. All of these are natural outgrowths of applying the principles of fundamental human rights to networked systems.
Spritely builds on our experience co-authoring ActivityPub, the largest decentralized social network on the web to date, while applying powerful ideas from object capability security research.
Better worlds await, because better worlds are possible. Let's build a healthier and safer network together!
✩ About Our Tech ✩
It's hard to build the kind of vision Spritely is envisioning on top of contemporary tech. Because of this, Spritely is taking a multi-layer approach!

Goblins is the foundation of the rest of Spritely's tech and makes building distributed and capability-secure programs easy and fun:
- Easy and secure networked programming: Programs you write in Goblins automatically are ready to work over the network and Goblins' security model looks like ordinary programming.
- Automatic persistence: Goblins comes with a persistence framework so you can focus on writing out your programs; most of the time, Goblins can take care of the rest of saving data to storage for you!
- Transactions: Goblins is fully and automatically locally transactional: state changes are rolled back automatically upon error at no extra cost.
- Time traveling debugger: Goblins' time traveling debugger lets you debug your program in the state that it was in when the error occured, and can even create visualizations of what created the problem! Only keep as much history as you need: Goblins is happy to clean up any state not needed for debugging!
- And much more! Goblins supports distributed garbage collection, promise pipelining for efficient networked communication, a standard library of common actor types, and much more!
[Check out Goblins!]

Hoot is Spritely's Scheme-to-WebAssembly compiler and all-around WebAssembly toolkit. Hoot was designed to allow Spritely's tools to run in the browser and reach a wider audience. However Hoot is generally powerful and useful for building Scheme projects on the web.
But that's not all! In addition to being a Scheme-to-WebAssembly compiler, Hoot also features WebAssembly assembler and disassembler tools... and even a WebAssembly interpreter for developers! If you're thinking of making your own custom WebAssembly language or even just want to learn how WebAssembly works, Hoot might be just what you want!
[Check out Hoot!]
OCapN, the Object Capability Network, is the suite of protocols that gives Goblins its networked programming superpowers. OCapN's CapTP gives fine-grained capability programming over the network, distributed garbage collection, promise pipelining to avoid extra network round-trips, and introductions and smooth communication between peers as appropriate. OCapN's netlayers allow layering OCapN to run on top of a variety of network substrates including Tor Onion Services, libp2p, TCP+TLS, and perhaps some day carrier pigeons wearing encrypted microsd card backpacks.
OCapN's proto-standardization efforts are a joint project between multiple groups such as Spritely, Agoric, Metamask, and Sandstorm. Spritely took leadership in drafting the first versions of OCapN's specifications, extrapolating first from Goblins' implementation of the protocol, then working to bridge across the protocol needs of the participants of the group. OCapN builds on a long history of networked capability research, most prominently from the E programming language.
[Learn more about OCapN!]
✩ Read our Whitepapers ✩
The Spritely Institute is a 501(c)(3) nonprofit and research institution built to develop new technologies for the decentralized web. All code we release is free and open source software and all papers we write are open access under free cultural licenses.
- A Scheme Primer
A primer for the Scheme family of programming lanuages. It was originally written to aid newcomers to technology being developed at The Spritely Institute, but it is designed to be general enough to be readable by anyone who is interested in Scheme.
Formats: html | pdf | org - The Heart of Spritely: Distributed Objects and Capability Security
This paper details the core technical toolbox provided by Spritely Goblins and how it supplies the necessary features to make building peer-to-peer applications as natural as any other programming model.
Formats: html | scheme pdf | wisp pdf | org - Petnames: A humane approach to secure, decentralized naming
Names must be human-readable in order to be widely used. Unfortunately, while DIDs and Tor .onion addresses are decentralized and globally unique, they are not human readable. How can we build user interfaces that real users might actually use? In this paper we provide an overview of petname systems, a way of mapping human readable names to cryptographically secure names.
Formats: html | pdf | org - Implementation of a Petnames System in an existing chat application
In this paper, which builds off of the Petnames paper, we present our experiences from implementing a petname system for an existing chat application. We introduce the necessary mechanisms to retroactively introduce a petname system, the solutions provided, and future expected work.
Formats: html | pdf | org - Content Addressed Descriptors and Interfaces
This paper presents an example implementation of a way for programs to describe themselves to each other and to users in a decentralized system. Making use of a simple petname system, content-addressed descriptors and interfaces can allow multiple parties to agree on what a particular term means without prior context. This understanding can be distributed without a centralized naming authority. This paper also describes some of the necessary design considerations when using CADs in a mutually suspicious network.
Formats: html | pdf | org