Contributing
July 7, 2026 · View on GitHub
Thanks for your interest in improving DistroKid Auto-Input. This is a single-file userscript, so contributing is lightweight.
Ways to help
- Fix broken selectors. DistroKid changes its upload form from time to time. If a field stops filling, the CSS/ID selector likely changed. Reporting the old vs. new selector (or sending a PR) is the most valuable contribution.
- Improve documentation — clearer preset examples, more known genre values, etc.
- New preset fields — support additional form fields that are currently filled by hand.
Development setup
There's no build step. The script (distrokid-auto-input.user.js) is loaded directly by your userscript manager.
- Fork and clone the repo.
- In Tampermonkey/Violentmonkey, create a new script and paste the file contents, or point a local file watcher at it. Tampermonkey can also load a script from a local file URL for iteration.
- Open https://distrokid.com/new and test your change against the live form.
Before opening a PR, run a syntax check:
node --check distrokid-auto-input.user.js
Guidelines
- English only for code, comments, and docs.
- No personal data in commits. Keep every field in
DEFAULT_PRESETblank; never commit real names, labels, or release details. - No new network calls. The script must keep
@grant noneand make no requests of its own beyond the existing@requiredependencies. - Match the existing code style (4-space indent,
const/let, small helpers). - If you change or add
@requiredependencies, note why in the PR.
Pull requests
- Keep PRs focused — one fix/feature at a time.
- Describe what you tested (which fields, which browser + manager).
- Bump the
@versionheader if the change affects behavior, and add a note to CHANGELOG.md.
By contributing, you agree that your contributions are licensed under the Apache-2.0 license.