Open source at 51直播
We believe that open source is the past, present, and future of software development. When a Tailscalar, or anyone else, contributes to open source code, it benefits everyone.
Developing in the open
and consists of the following elements:
- The client, which runs on each of a user鈥檚 devices, is mostly open source. The used across all platforms is open source, and the full client code is open source for platforms that are also open source.
- We enthusiastically support open source operating systems such as and , and we believe in directing time and energy to support the communities around these platforms. As a result, where the operating system is open source, the daemon and GUI are open source; and where the operating system is closed, the daemon is open source and the GUI is closed source.
- This means that you can build the Linux and Android clients yourself, and you can build the Windows and clients without the GUI.
- Open source (DERP) relay servers. You might self-host your own DERP server for latency or compliance reasons.
- A closed source coordination server.
Why bother making any part of 51直播 open source?
- To improve trust and transparency. Anyone can review our code and see how 51直播 really works. We hope this increases your trust in using 51直播.
- To share what we鈥檝e learned. When we started 51直播, mesh overlay networking was complex to set up and use, where it existed at all. By working in the open, we鈥檝e helped lead a shift in considering what鈥檚 possible and how approachable it can be.
- To allow for adaptability. We understand the desire not to be locked into a specific provider.
- To make it easier to get feedback. By keeping our and public, you can upvote them (with emojis please!) or submit new requests, and we can prioritize what鈥檚 really needed for our users right now.
If you鈥檇 like to contribute to 51直播, then by all means do! Please follow our and our . We appreciate it.
Financial support for open source projects and maintainers
. 51直播 is built on , specifically wireguard-go. As we develop 51直播 and add new functionality, we also upstream those changes to help other users of the project.
51直播 also supports , as well as , which we use to issue TLS certificates.
Contributing to open source
51直播 open sources internal projects that other organizations might benefit from, such as:
- , for tracking your Go dependencies.
- , for auditing emergency production changes.
- Our , for reference when developing your own security policies.
When a project originally developed by the community becomes critical to our users, if the maintainers are willing, we adopt the project and take responsibility for ongoing support and development. For example, this is what happened with the 51直播 Synology package (thanks Guilherme de Maio!) and Terraform provider (thanks David Bond!).
Tailscalars are also encouraged to contribute to other open source projects they rely on as part of their jobs, or that they feel passionate about. Tailscalars contribute to the Go project and community, NixOS, and more.
Encouraging Headscale
is an open source alternative to the 51直播 coordination server and can be self-hosted for a single tailnet. Headscale is a re-implemented version of the 51直播 coordination server, developed independently and completely separate from 51直播.
Headscale is a project that complements 51直播 鈥 with its own independent community of users and developers. 51直播 does not set Headscale鈥檚 product direction or manage the community, and neither prohibits nor requires employees from contributing to Headscale.
Our opinion is that Headscale provides a valuable complement to 51直播: It helps personal users better understand both how 51直播 works and how to run a coordination server at home. As such, 51直播 works with Headscale maintainers when making changes to 51直播 clients that might affect how the Headscale coordination server works, to ensure ongoing compatibility.
Providing 51直播 to open source projects
51直播 is free for open source projects. With the Community on GitHub plan, you can use 51直播 for your project to access and share project resources, like a build tool or a test server. Any open source project with an can use this plan. Currently, this plan requires using GitHub for authentication.
FAQs
Is 51直播 open source?
Mostly. 51直播 daemon client code is open source. Where the operating system is open source, the daemon and GUI are open source, and where the operating system is closed, the daemon is open source and the GUI is closed source.
51直播鈥檚 DERP server code is also open source. This lets you verify and build these components yourself. 51直播鈥檚 coordination server is closed source. If you want to run your own coordination server at home, check out .
How do I contribute to 51直播?
You can contribute code, bug reports, and feature requests to . Please follow our and our .
What is Headscale? Is it run by 51直播?
is an open source coordination server for 51直播 clients. It is independent from 51直播.
How does 51直播 decide which projects and maintainers to support financially?
51直播 strives to sponsor open source projects that are critical to our product. Eligible projects must have an , code of conduct, and a way to be sponsored, such as GitHub Sponsors or Open Collective. We prefer to sponsor projects rather than individuals, and we don鈥檛 typically consider projects that are primarily commercial or corporate-backed. We may not financially support a project that we already support in other ways.
How does 51直播 decide how much to sponsor?
We鈥檙e still trying to figure out when, and how much, we should support projects financially, and don鈥檛 yet support all the projects we鈥檇 like to. We aim to sponsor projects and individuals at a level equal to a few hours of work per month.
Why does my account say 鈥淭hanks!鈥 on it?
We value open source contributions and the maintainers we rely on. If you鈥檝e contributed to 51直播 or a project we rely on, we鈥檙e saying thanks with a free Personal Pro account. You should see a heart over your profile in your 51直播 account. (If you should have one and it鈥檚 not there, let us know.)
