Skip to content

Latest commit

 

History

History
99 lines (68 loc) · 2.6 KB

CONTRIBUTING.md

File metadata and controls

99 lines (68 loc) · 2.6 KB

Contributing to CSS Typed Object Model Polyfill

Issues, discussions, and pull requests are always welcome.

Reporting Issues / Starting Discussions

Found a problem? Want a new feature?

  • Check GH issues and PR requests on this repot to see if it's already documented or in development
  • If your idea doesn't feel like it fits in an issue, start a new GH Discussion for it
  • Provide a reduced test case and/or a live example

Working locally

Repo setup

# Clone your fork of the repo into the current directory
git clone git@github.com:YOUR_USER/css-typed-om.git

# Navigate to the newly cloned directory
cd css-typed-om

# Assign the source repo to a remote called "upstream" to allow you to sync changes and open pull requests
git remote add upstream git@github.com:tylergaw/css-typed-om.git

# Install dependencies
npm i

Testing and building

Most code changes need new or updated tests

# Run all tests once
npm test

# Run all tests and re-run when files change
npm run test:watch

To run the demo locally, you'll need to build a bundle.

# Run the Rollup build once
npm run build

# Start nodemon and invoke npm run build when files change
npm start

Code formatting

We use Git hooks via husky and lint-staged to format any changed files with Prettier. We follow the recommended setup.

If you ever need to manually format all code with prettier, run:

npm run prettier

Submitting Pull Requests

Pull requests are always welcome. Small, focused PRs are the best.

Create a branch for your feature or fix:

# Move into a new branch for your feature
git checkout -b your-branch-name

Make sure all tests are passing then push your feature branch:

# Test current code
npm test
# Push the branch for your new feature
git push origin your-branch-name

When you're ready, open a pull request with a descriptive title and description. Descriptions should tell a full story with a what, why, and how. Link to any related issues, discussions, or PRs.