These docs have been generated using AI. Expect inaccuracies until we remove this banner.
- Docs
- Getting Started
- Introduction
Introduction to Troy
Troy is an open-source plugin suite that lets WordPress developers distribute their plugins independently—from their own servers, on their own terms.
If you're a site owner, Troy Client receives updates for plugins your developer hosts. If you're a plugin developer, Troy Server lets you publish updates without relying on any centralized directory.
Why Troy Exists
WordPress is software, not a platform. Yet over the years, the line has blurred. Plugin developers have watched their work get blocked, hidden, or removed from WordPress.org—sometimes without warning, sometimes without recourse. Recent events in the WordPress ecosystem have shown that centralized control over plugin distribution can leave developers vulnerable.
Your code is yours. You wrote it. Your users chose it. No directory should hold that relationship hostage.
Troy was built so you don't have to ask permission to distribute your own software.
The Philosophy
Troy is developed by Sybre Waaijer, creator of The SEO Framework. The same principles that guide his work there apply here:
- Never release with bugs. Your users' sites are not testing facilities.
- Respect every user. Whether free or paid, everyone deserves working software.
- Prevent problems, don't just solve them. Good design eliminates the need for support.
- Fair and honest. No dark patterns, no vendor lock-in.
Troy isn't about competing with WordPress.org—it's about having an alternative when you need one.
Why MIT Instead of GPLv2
WordPress uses the GPLv2 license, and that's fine for many projects. But GPLv2 is a copyleft license: it requires derivative works to also be GPLv2. This creates a form of license lock-in.
Troy uses the MIT license because:
- Freedom without strings. Use Troy in any project—commercial, proprietary, or open source.
- No viral licensing. Your plugins don't inherit license requirements from Troy.
- Simpler compliance. MIT is short, clear, and widely understood.
We believe true software freedom means freedom to choose—including your license.
How It Works
Troy has two main components:
Troy Client
For site owners who want to receive plugin updates from developers using Troy.
- Install the plugin, activate it, done.
- Updates appear in your normal WordPress dashboard—no extra steps.
- Privacy-first: only essential data is shared, anonymized via rotating identifiers.
Troy Server
For plugin developers who want to host their own update repository.
- Upload a ZIP file or connect your GitHub repository.
- Share your Troy Server URL with users.
- Updates flow through WordPress's native update system—users see them just like any other plugin update.
That's it. No complicated setup, no ongoing maintenance burden. One upload, full control.
What Troy Is Not
Troy is designed as a sideloading system, not a replacement for WordPress infrastructure:
- Not a replacement for WordPress.org. Troy doesn't replace the WordPress.org update system—it works alongside it for plugins that opt in.
- Not a blocking tool. Troy doesn't prevent other plugins from communicating with their own servers or WordPress.org.
- Not a WordPress core updater. Troy handles plugins only. Core updates still come from WordPress.org.
- Not a drop-in API replacement. Troy uses its own protocol; it's not compatible with WordPress.org's update API format.
- Not a protest tool. It's practical infrastructure for developers who need independence.
What Troy Does
- Sideloads plugin updates from developer-hosted Troy Servers.
- Opt-in only. Plugins must explicitly add a
Troy:header to enable Troy updates. Developers choose to participate. - Privacy-preserving. Only the repository owner sees information about their Troy plugins. We don't have access to your data—and neither does anyone else.
Getting Started
Ready to try it?
- Site owners: Install Troy Client in about 30 seconds.
- Plugin developers: Set up Troy Server and publish your first plugin in minutes.
Community
Troy is community-driven and open source. Found a bug? Have a feature request? Want to contribute?
- GitHub: github.com/sybrew/troy
- Discord: Join the conversation
It's your code. Take it back.
