Community-driven app registry for JSOS applications.
- Submit — Open an Issue using the "Register New App" template
- Review — A maintainer reviews your submission
- Approve — Once approved, a PR is automatically created
- Merge — After PR review, your app is registered
- Sync — A scheduled workflow fetches latest data from your repo every 6 hours
- Discover — Your app appears in the JSOS App Store
- Go to Issues
- Fill out the form with your app's information
- Submit and wait for maintainer review
- Your app must be a valid JSOS application
- Your
package.jsonmust include ajsosfield withidandstartCommand - The repository must be public on GitHub
Use the format domain.category.name:
dev.tool.markdown-editor
com.game.tetris
org.util.file-manager
jsos-app-store/
├── apps/ # Registered app manifests
│ ├── dev.tool.app-a.json
│ └── com.game.app-b.json
├── store.json # Auto-generated app data (DO NOT edit manually)
├── .github/
│ ├── ISSUE_TEMPLATE/ # Issue forms
│ └── workflows/ # CI/CD automation
└── scripts/
└── sync-store.js # Store sync script
- When a new Issue is opened with the
app-registrationlabel, review the submitted information - Verify the repository exists and contains a valid JSOS app
- If approved: add the
approvedlabel — this triggers automatic PR creation - If rejected: add the
rejectedlabel and comment with the reason
| Label | Purpose |
|---|---|
app-registration |
Auto-added to new submission Issues |
approved |
Maintainer approval — triggers PR creation |
rejected |
Submission rejected — triggers explanatory comment |
The sync-store.js script runs every 6 hours via GitHub Actions:
- Reads all
apps/*.jsonfiles - For each app, fetches repo metadata and latest release from GitHub API
- Aggregates data into
store.json - Commits and pushes the updated file
The store.json file is consumed by the JSOS App Manager frontend.
MIT