Skip to content

Latest commit

 

History

History
73 lines (50 loc) · 1.98 KB

CONTRIBUTING.md

File metadata and controls

73 lines (50 loc) · 1.98 KB

Contributing to plotly.js

Opening issues

Search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Development

Prerequisites:

  • git
  • node.js. We recommend using node.js 4.2.1 (LTS). Upgrading and managing node versions can be easily done using nvm or its Windows alternatives.

Step 1 Clone the plotly.js repo and install its dependencies

git clone https://github.com/plotly/plotly.js.git
cd plotly.js
npm install

Step 2 Start the test dashboard

npm run start-test_dashboard

This command bundles up the source files with source maps, starts a watchify file watcher (making the your dev plotly.js bundle update every time a source file is saved) and opens up a tab in your browser.

Step 3 Open up the console and start developing

Make some modifications to the source, refresh the page and check the results by for example pasting in the console:

Plotly.plot(Tabs.fresh(), [{x:[1,2,3], y:[2,1,2]}]);

Other npm scripts:

  • npm run preprocess: pre-processes the css and svg source file in js. This script is run automatically on npm install.
  • npm run watch: starts a watchify file watcher just like the test dashboard but without booting up a server.
  • npm run lint: runs jshint on all source files

Testing

Both jasmine and image tests are run on CircleCI on every push to this repo.

Jasmine tests are run in a browser using karma. To run them locally:

npm run test-jasmine

Image pixel comparison tests are run in a docker container. For more information on how to run them locally, please refer to image test README.

Repo organization

Coding style