Contributing
Bug fix pull requests always welcome! For new features, please open an issue first to discuss.
Setup
git clone https://github.com/janosh/matterviz
cd matterviz
npm install Development
Start the dev server:
npx vite
# or
npm run dev Testing
Run all tests:
npx vitest
# or
npm test Run Playwright end-to-end (E2E) tests:
npx playwright test Test Requirements
New features should include tests. Bug fixes should include a test that fails on the old code and passes with your fix.
- Unit tests go in
tests/vitest/ - E2E tests go in
tests/playwright/ - Test functions should have typing annotations and concise docstrings explaining what they test.
Before you start committing, create and check out a descriptively named branch:
git checkout -b cool-new-feature
# or
git checkout -b bug-fix-for-something Making a Release
Update version in
package.json(follows semver)Generate changelog (requires
deno):deno run -A https://github.com/janosh/workflows/raw/refs/heads/main/scripts/make-release-notes.tsCommit and tag:
git add package.json changelog.md readme.md git commit -m "v1.2.3" git tag v1.2.3 git push && git push --tags