Linaria is one of Callstack's open source projects that is currently under very active development. Hopefully this document makes the process for contributing clear and answers some questions that you may have.
We want this community to be friendly and respectful to each other. Please read the full text so that you can understand what actions will and will not be tolerated.
The core team works directly on GitHub and all work is public.
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub
Before submitting a pull request, please make sure the following is done:
-
Fork the repo and create your branch from
master
(a guide on how to fork a repository) -
Linaria uses Yarn for running development scripts. If you haven't already done so, please install yarn.
-
If you've added code that should be tested, add tests. You can use watch mode that continuously transforms changed files to make your life easier.
# in the background yarn run build:transpile:watch
-
If you've changed APIs, update the documentation.
-
Ensure the test suite passes via
yarn run lint && yarn run flow && yarn run test
.
If you are making changes to the website, test the website folder and run the server to check if your changes are being displayed accurately.
- Locate to the website directory and install any website specific dependencies by typing in
yarn
. It will automatically link the locallinaria
version for you. Following steps are to be followed for this purpose from the root directory.cd website # Only needed if you are not already in the website directory yarn yarn test
- You can run a development server to check if the changes you made are being displayed accurately by running
yarn start
in the website directory.
To link linaria
on the command line to local copy in a development build:
cd /path/to/your/linaria_clone/
yarn
yarn link
cd /path/to/test_project/
yarn link linaria
To unlink it:
yarn unlink linaria
The best way to get your bug fixed is to provide a reduced test case. Please provide a public repository with a runnable example.
- Callstack Open Source Slack - #linaria.
We use Prettier with ESLint integration.
By contributing to Linaria, you agree that your contributions will be licensed under its MIT license.