Plugin Bounties
How the nself plugin bounty system works, submit requests, vote, fund, and ship.
The bounty system lets the community pool money to fund specific plugin development. You post a request, others vote and pledge, and ɳSelf builds the winner.
How it works
1. Submit a request. Any nself account holder can submit a plugin request at nself.org/bounties/new. Describe what the plugin should do and why it’s valuable.
2. Vote. Every logged-in user gets one vote per request. Votes are toggleable, cast and retract at any time while a bounty is open.
3. Pledge funds. The Pledge button on each bounty detail page redirects to the ɳSelf GitHub Sponsors page. Pledges are tracked and added to the bounty pool.
4. ɳSelf accepts the bounty. When a bounty crosses the $50 funding threshold and enough votes, ɳSelf marks it in_progress and begins development.
5. Plugin ships. Once complete, ɳSelf marks the bounty shipped, records the plugin slug, and the plugin becomes available via nself plugin install <name>.
Bounty statuses
| Status | Meaning |
|---|---|
open | Accepting votes and pledges |
funded | Pool reached the $50 threshold |
in_progress | ɳSelf accepted and is building it |
shipped | Plugin is live, install via CLI |
closed | Request withdrawn or rejected |
Pledging
Pledges go through the ɳSelf GitHub Sponsors page. The minimum pledge is $5. Pledges are tracked manually from GitHub Sponsors and added to each bounty’s pool total. There is no automatic payment processing, ɳSelf manually transfers payment to contributors after shipping.
Payout
Payout goes to the plugin author after ɳSelf ships the plugin, not before. payout is handled via Stripe transfer on the ship event.
API
The bounty API is available at ping.nself.org/api/bounties:
GET /api/bounties List (sort: votes|bounty|newest|shipped, filter: status)
GET /api/bounties/stats Pool total, open count, shipped count
GET /api/bounties/leaderboard Top voters and pledgers
GET /api/bounties/:id Single bounty detail
POST /api/bounties Create a request (auth required)
POST /api/bounties/:id/vote Toggle vote (auth required)
POST /api/bounties/:id/ship Mark shipped (bounty_admin role only)
All write endpoints require authentication via x-hasura-user-id header (set automatically by the ɳSelf Nginx session layer).
Admin role
The bounty_admin Hasura role can update bounty status and mark bounties shipped. Assign via the user’s role column in the users table. This role is internal to ɳSelf team members.
Leaderboard
The leaderboard at nself.org/bounties/leaderboard shows the top 10 voters by vote count and the top 10 pledgers by total amount pledged.