How plugins work
Plugins are Android APKs packaged into.klyx bundles. Klyx loads them at runtime. Each extension declares metadata in a plugin.json file and implements the KlyxPlugin interface. The app manages the full lifecycle: loading, starting, stopping, and unloading.
Architecture overview
Every plugin starts with aplugin.json manifest and a class that implements KlyxPlugin. At runtime, Klyx injects services into your plugin through property delegates. You register screens, toolbar actions, file openers, and event subscribers during the lifecycle hooks.
What you can build
- Custom screens and UI panels
- Toolbar actions with icons
- Custom file openers for new file types
- Terminal session management
- Language server integrations
- Background process execution
- Event-driven features responding to file opens, terminal events, and more
- Theme-aware UI using Klyx’s color system and typography
- And more
Prerequisites
Before you begin, make sure you are comfortable with the following technologies and concepts:- Kotlin - for implementing core plugins logic
- Android Fundamentals - e.g. Activities, Services, Context, …
Next steps
Quickstart
Build your first plugin in minutes
Creating an Extension
Step-by-step guide to creating a Klyx extension
API Reference
Complete API reference for all Klyx extension APIs