PRs are the preferred way to spike ideas and address issues, if you have time. If you plan on contributing frequently, please feel free to ask to become a maintainer; the more the merrier.
We use Bolt to manage our mono-repo. Please read their docs before proceeding.
- The site can be found in
- All packages can be found in
To get started, run
To run your tests in watch mode, run:
To narrow down the tests that are run, you can use the
jest --watch --testPathPattern skatejs
The above would run only tests that have paths that match
Documentation / website
To document a package or work on the website, run
bolt dev. This will start up
webpack-dev-server and you can dev as normal.
Releasing is restricted to those with NPM access. If you have access there's a couple commands that will help you.
To determine what needs to be released you can run
projector changes. You can then run
projector release to release the packages at your specified type.
If you want to release a
patch version of
skatejs, you can run
projector release --packages skatejs --type patch.
Here are some other commands that you may need to run from time to time, for whatever reason:
bolt buildbuilds all distributions.
bolt flowinvokes the local
bolt precommitruns the pre-commit hook.
bolt prepareprepares the packages for publishing.
bolt sitecompiles the website.
bolt testruns all tests for all packages once.
bolt test:jsruns all the unit / integration tests.
bolt test:tsruns all of the TypeScript definition tests.