-
Notifications
You must be signed in to change notification settings - Fork 18
Maintaining and Contributing
Chosen is a maintained fork of Harvest Chosen. The project accepts focused fixes and additions that preserve the library’s established role: enhancing ordinary select elements without replacing their form semantics.
- Read the contributing guide.
- Search both the fork’s issues and the Harvest archive.
- Reproduce the behavior against current
master. - Preserve current defaults unless new behavior is intentionally opt-in.
- Update both jQuery and Prototype adapters when shared behavior changes.
- Follow the repository's
AGENTS.mddocumentation and verification guidance.
The project requires the Node version declared in .nvmrc.
npm install
npm testnpm test rebuilds generated assets and runs the browser matrix. Commit source and generated distribution files together.
Useful focused commands:
npm run test:jquery
npm run test:proto
npm run test:mobileCoffeeScript and SCSS remain the editable sources. Built JavaScript, CSS, source maps, and documentation copies are part of the repository and release packages.
Document user-visible behavior in CHANGELOG.md. Add a developer note when generated markup, classes, IDs, or nesting changes, even when the visible behavior is a bug fix.
Update the live Options page for new settings, add jQuery and Prototype examples
when the behavior benefits from trying it, and keep the corresponding wiki
guide and screenshots current.
- npm package:
chosen-jjj - Composer package:
jjj/chosen - Release archives: GitHub Releases
The GitHub Actions trusted-publishing workflow publishes npm releases. GitHub
Pages separately publishes the committed docs/ directory whenever master
changes. A tag by itself does not update the site. CI and the npm release
workflow check that a fresh build leaves dist/ and docs/ unchanged, so
release commits must include their generated site assets. Follow the release
checklist in the contributing guide rather than publishing from an arbitrary
local checkout.
Chosen was created by Patrick Filler for Harvest, with design and CSS by Matthew Lettini. The current fork retains the project history and credits contributors in the repository and release notes.
Chosen · jQuery demo · Vanilla demo · React demo · Options · Releases · MIT License