Community Crown profile store for Moonlight V+.
Moonlight V+ reads this repository as a static store. The app downloads
index/v1.json, shows the published profiles, then downloads the selected
.crown.json bundle from this repository.
https://raw.githubusercontent.com/qiin2333/crown-profiles/main/index/v1.json
index/v1.json Generated store index consumed by the app
policy/sensitive_words.txt Blocked wording list used by local/CI validation
profiles/<game>/<profile>.json Published Crown profile bundles
schemas/ JSON schema references
tools/generate_store_index.py Rebuilds the generated store index
tools/validate_store.py Local/CI validation
- Open Crown Configuration Management.
- Choose "Publish to Crown Store".
- Authorize GitHub when prompted.
- Pick a local Crown profile and fill in the Store listing.
- Moonlight V+ will fork this repository, commit the profile bundle, then open a pull request from your GitHub account. The store index is generated by this repository after the pull request is merged.
The app asks GitHub for public repository access only so it can create that fork, branch, commit, and pull request. It does not receive direct write access to the main store branch.
- Export a Crown share package from Moonlight V+.
- Add the
.crown.jsonfile underprofiles/<game>/. - Run
python tools/validate_store.py. - Open a pull request.
Do not edit index/v1.json in profile submissions. It is generated from the
profile bundle files by GitHub Actions after merge.
Pull requests are also checked against policy/sensitive_words.txt. If a
profile listing or payload contains blocked wording, CI will fail before merge.
If you are submitting from a phone, open an issue with the "Submit Crown
Profile" template and attach the exported .crown.json file. A maintainer can
move it into profiles/ after validation.
Moonlight V+ should never embed a repository write token. Fully direct in-app publishing must use the user's GitHub authorization and open a pull request from the user's account.