Technology you can use and build on.
Run a service for your community, bring censorship resistance into an existing app, or create a component other teams can use. Outline provides tools and shared interfaces that let these contributions work together.
Run a service for your community
Outline VPN makes it easier to provide access for people you know. Outline Manager helps you set up and manage a virtual private network (VPN) server and create access keys. People use Outline Client and a key from their service provider to connect.
You choose where the server runs and who receives access. The Foundation builds the software; independent people and organizations operate the services.
Use Outline · Get product help
Running a service also means managing access, troubleshooting connections, and responding as people’s needs change. Our provider research explores that experience and what the tools need to support.
Bring censorship resistance into your app
A publisher or app developer can use Outline technology to help people reach information and services through an app they already use.
The Outline software development kit (SDK) provides libraries, tools, and shared interfaces: agreed ways for pieces of networking software to work together. Those interfaces let app teams choose and combine capabilities from different contributors.
Think of the SDK as the USB of networking libraries. A keyboard maker can build a better keyboard without building a whole computer. In the same way, a developer can focus on a connection technique, and app teams can choose and combine compatible components. Adapting a capability to a shared interface reduces the need to build a different adapter for every app.
Practical reuse takes engineering: focused components, clear interfaces, documentation, tests, and packaging that make a capability straightforward to integrate. App maintainers still choose, configure, test, and release what they adopt.
Add Outline technology to your mobile app · Explore the SDK code
Build a compatible component
A useful contribution can be a single networking capability. It can reach people through existing applications, without its creator having to build a complete consumer app or acquire an audience.
Developers can implement the SDK interfaces, publish a component in their own library, and work directly with app teams. They do not need to wait for a merge into an Outline repository, an Outline release, or the Foundation’s approval. The app team decides what to adopt and validates it for its users.
This gives contributors room to specialize and pursue ideas in parallel. The SDK contains shared interfaces, components, and tools; the wider ecosystem also includes independently published components that implement those interfaces.
Help more people create effective technology
Our next ambition is to make the process of developing effective technology more accessible. Reusing an existing capability expands its reach. Helping more people create capabilities expands what the ecosystem can do.
We want to help contributors learn a repeatable process:
- Investigate a connection failure and form a testable explanation.
- Combine existing components, test them, and try different configurations.
- When testing reveals a missing capability, build the focused component needed.
- Validate the result, seek independent evaluation, and share reproducible examples.
- Work with app teams to integrate and release useful improvements.
Shared tools, documentation, review, and collaboration can make that process easier to learn. AI could help contributors explore combinations, write the missing pieces, and document their work. Testing and engineering judgment remain essential to establish what works. Each useful addition becomes another building block for the next contributor.
Explore research and methods · Discuss collaboration
See the impact of shared technology · Support its development