Thanks for taking the time to contribute! 😄
All contributors are expecting to abide by our Code of Conduct.
The documentation in this repo is generated using Hexo.
Fork this repository
Using GitHub, create a copy (a fork) of this repository under your personal account.
Clone your forked repository
git clone [email protected]:<your username>/cypress-documentation.git
cd cypress-documentation
Install dependencies:
note: at least Node 6 is required, but Node 8 with NPM v5 is preferred to take advantage of the package lock file.
npm install
This will install this repo's direct dependencies.
Then, build the public
directory and start the app:
npm run build
npm start
Visit http://localhost:2222/.
note If you need to debug documentation build step run with environment
variable set DEBUG=docs npm run build
We use Cypress itself to test the documentation. To start the server and run E2E tests execute the command npm run test-e2e
.
To add an blog, talk, or podcast to our docs, submit a pull request with your data added to the corresponding blogs.yml, talks.yml, or podcasts.yml file.
Add an associating image with the example within the source/img/examples
directory. Each image should be resolution 715w x 480h. Reference the image in the markdown document as follows:
{% img /img/examples/name-of-file.jpg "alt text describing img" %}
To add a plugin, submit a pull request with the corresponding data added to the plugins.yml file. Your plugin should have a name, description, link to the plugins code, and any keywords.
Danger 📛: because we are minifying client side code using a Hexo plugin which in turn calls
uglify
, the code should be strictly ES5. Thus everything inside the theme
should be linted with ES5 settings and not upgraded to ES6.
You should push your local changes to your forked GitHub repository and then open a pull request from your repo to the cypress-io/cypress-documentation
repo.
- The pull request should be from your repository to the
develop
branch incypress-io/cypress-documentation
- When opening a PR for a specific issue already open, please use the
address #[issue number]
orcloses #[issue number]
syntax in the pull request description. - Please check the "Allow edits from maintainers" checkbox when submitting your PR. This will make it easier for the maintainers to make minor adjustments, to help with tests or any other changes we may need.
We use a cla-assistant.io
web hook to make sure every contributor assigns the rights of their contribution to Cypress.io. If you want to read the CLA agreement, its text is in this gist.
After making a pull request, the CLA assistant will add a review comment. Just click on the link and accept the CLA. That's it!
We will try to review and merge pull requests as fast as possible. After merging, we will deploy it to staging environment, run E2E tests (using Cypress itself of course), and then merge it into master
, which will deploy it to the official https://docs.cypress.io website. If you want to know our deploy process, read DEPLOY.md.