tailwindcss/.github/CONTRIBUTING.md
2017-11-07 07:38:05 -05:00

86 lines
2.0 KiB
Markdown

# Contributing
Thanks for your interest in contributing to Tailwind CSS! Please take a moment to review this document **before submitting a pull request**.
## Pull requests
**Please ask first before starting work on any significant new features.**
It's never a fun experience to have your pull request declined after investing a lot of time and effort into a new feature. To avoid this from happening, we request that contributors create [an issue](https://github.com/tailwindcss/tailwindcss/issues) to first discuss any significant new features. This includes things like adding new utilities, creating new at-rules, or adding new component examples to the documentation.
## Coding standards
Our code formatting rules are defined in [.eslintrc](https://github.com/tailwindcss/tailwindcss/blob/master/.eslintrc). You can check your code against these standards by running:
```sh
npm run style
```
To automatically fix any style violations in your code, you can run:
```sh
npm run style --fix
```
## Running tests
You can run the test suite using the following commands:
```sh
npm test
```
Please ensure that the tests are passing when submitting a pull request. If you're adding new features to Tailwind, please include tests.
## Building the documentation
Tailwind uses the [Jigsaw](http://jigsaw.tighten.co/) static site generator for its documentation. Here is how you can generate the documentation locally:
1. Go to your Tailwind folder
```sh
cd tailwindcss
```
2. Install JS dependencies
```sh
npm install
```
3. Transpile the source code
```sh
npm run prepare
```
4. Go to docs folder
```sh
cd docs
```
5. Install PHP dependencies for docs (requires Composer: https://getcomposer.org)
```sh
composer install
```
6. Install JS dependencies for docs
```sh
npm install
```
7. Run the build to generate the static site
```sh
npm run dev
```
8. View the static site at `/tailwind/docs/build_local`, or you can run the Jigsaw server:
```sh
./vendor/bin/jigsaw serve
```