Skip to content
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
26 lines (17 sloc) 2.07 KB

Contributing to Hyperapp

Thank you for taking the time to read our contribution guidelines. You can start contributing in many ways like filing bug reports, improving the documentation, or helping others.

Our open source community strives to be nice, welcoming and professional. Instances of abusive, harassing, or otherwise unacceptable behavior will not be tolerated.


  • Hyperapp is written in ES5. Please don't create an issue asking us to rewrite it in ES6 or TypeScript.
  • We use Prettier to format the code. If you don't have Prettier installed in your code editor or IDE, you can use npm run format before submitting a pull request.
  • We prefer keeping all the moving parts inside as few files as possible. There are no plans to break up the library into smaller modules.


  • Before submitting a bug report, search the issues for similar tickets. Your issue may have already been discussed and resolved. Feel free to add a comment to an existing ticket, even if it's closed.
  • Determine which repository the problem should be reported in. If you have an issue with the Router, you'll be better served in hyperapp/router, etc.
  • If you have a question or need help with something you are building, hop on Slack.
  • Be thorough in your title and report, don't leave out important details, describe your setup and include any relevant code with your issue.
  • Please use GitHub fenced code blocks when sharing code. If your code has JSX in it, use ```jsx for best syntax highlighting.


  • We use Babel and Jest to run tests.
  • Feel free to create a new test/*.test.js file if none of the existing test files suits your test case.
  • Tests usually consist of an application demonstrating a feature, then check if document.body.innerHTML matches some string.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.