Publishing Your Plugin
To make your plugin discoverable in Aloha Desktop, you need to:
- Publish a release on GitHub
- Add your plugin to the aloha-releases registry
Step 1: Publish GitHub Release
Automatic Publishing (Recommended)
The vite-aloha template includes a GitHub Actions workflow that automatically creates releases when you push a new version tag.
Enable Workflow Permissions
First, configure your repository to allow the workflow to create releases:
- Go to your repository Settings
- Navigate to Actions → General
- Scroll to Workflow permissions
- Select: Read and write permissions
- Click Save
Create a Release
# Update version in package.json (e.g., to 1.0.0)
npm version 1.0.0
# This creates a commit and tag automatically
# Push both the commit and tag
git push origin main
git push origin v1.0.0The GitHub Actions workflow will automatically:
- ✅ Build your plugin
- ✅ Create a
plugin.tgzarchive containing thedistfolder - ✅ Create a GitHub release with both
manifest.jsonandplugin.tgz - ✅ Attach the required assets to the release
TIP
The workflow is triggered by tags matching the pattern v*.*.* (e.g., v1.0.0, v2.1.3)
Manual Publishing
If you prefer to publish manually or use a different CI/CD provider to release a new version:
1. Build Your Plugin
npm run build2. Create Plugin Archive
For plugins bundled with vite-aloha:
# Create tarball from dist folder
tar czf plugin.tgz distFor non-bundled plugins:
# Create tarball with src and public folders
tar czf plugin.tgz src public3. Create GitHub Release
- Go to your repository on GitHub
- Click Releases → Create a new release
- Create a new tag (e.g.,
v1.0.0) - Fill in release title and description
- Upload two files:
manifest.jsonplugin.tgz
- Click Publish release
Step 2: Add to aloha-releases Registry
Once you have a published GitHub release with the required assets, register your plugin in the marketplace.
TIP
You only need to submit the plugin to the registry once. After your plugin is published, users can download and update to new releases directly from the app.
Submit to Registry
- Visit the aloha-releases repository
- Click on
plugins.json - Click the Edit button (pencil icon)
- Add your plugin entry to the JSON array:
[
...existing plugins...,
{
"repo": "yourusername/aloha-your-plugin",
"name": "Your Plugin Display Name",
"author": "Your Name",
"description": "Short description of what your plugin does",
"icon": "https://raw.githubusercontent.com/yourusername/aloha-your-plugin/refs/heads/main/public/icon.svg"
}
]- Commit changes and create a Pull Request
Registry Entry Fields
| Field | Type | Required | Description |
|---|---|---|---|
repo | string | ✅ | GitHub repository in username/repo-name format |
name | string | ✅ | Display name shown in the marketplace |
author | string | ✅ | Your name or organization |
description | string | ✅ | Brief description of functionality (1-2 sentences) |
icon | string | Direct URL to your icon file |
After Publishing
Wait for Registry Approval
After submitting your PR to aloha-releases:
- Your submission will be reviewed
- Once approved and merged, your plugin appears in the marketplace
- Users can now discover and install your plugin
Next Steps
- Release Requirements - Review basic plugin release requirements
- Adding Dependencies - Bundle NPM packages
- Examples - See published plugin examples
- SDK Features - Explore SDK features