stylus/.github/CONTRIBUTING.md
Rob Garrison 5536f7ad22
Locales (#532)
* Add gitattributes

* Add update locales script

* Update locales

* Remove old script files

* Switch to use transifex client app
2018-11-03 09:37:25 -05:00

3.8 KiB

Contributing to Stylus

  1. Getting involved
  2. How to report issues
  3. Adding translations
  4. Pull requests
  5. Scripts
  6. Updating locale files
  7. Contact us

Getting involved

There are a number of ways to get involved with the development of Stylus. Even if you've never contributed to an Open Source project before, we're always looking for help by identifying issues and suggesting improvements.

How to report issues

When an issue is opened, a template is provided. Please answer these questions as thoroughly as possible. If we were psychic, we'd be hanging out in casinos playing poker until they kicked us out. We can't read your mind! Please provide step-by-step directions on how to reproduce the issue as well as the versions of your operating system, browser and Stylus.

When adding a feature request, please search through the existing issues to see if it the feature has already been requested, added or rejected.

If not, then provide details describing which page the feature will effect, e.g. popup, manager or editor. Then describe the request and explain how you think it would benefit the user experience.

Adding translations

You can help us translate the extension on Transifex.

Pull requests

  • First open an issue to discuss your changes.
  • Then download, fork or clone this repository.
  • Use the provided .editorconfig file with your code editor. Don't know what that is? Then check out https://editorconfig.org/.
  • Make any changes within a branch of this repository (not the master branch).
  • Submit a pull request and include a reference to the initial issue with the discussion.

Scripts

  • npm run lint - Run ESLint on all JavaScript files.
  • npm run update - Runs update-node & update-main scripts.
  • npm run update-quick - Updates development dependencies (uses npm update; does not include new dependencies).
  • npm run update-locales (admin only)- Updates locale files from Transifex. See the updating locale files section for more details.
  • npm run update-main - Runs update-versions & update-codemirror.
  • npm run update-node - Update development dependencies, removes & reinstalls node_modules folder (slow).
  • npm run update-transifex (admin only) - Upload en/messages.json source to Transifex.
  • npm run update-vendor - Update codemirror, codemirror themes & other vendor libraries.
  • npm run update-versions - Update version of manifest.json to match package.json.
  • npm run zip - Run update-versions, then compress required files into a zip file.

Updating locale files (admin only)

  • Make sure you have the Transifex client installed. Follow the instructions on this page.
  • Contact another admin if you need the .transifexrc file in the root folder. It includes the API key to use Transifex's API.
  • Use npm run update-locales in the command line to update the language files in the repo.
  • Use npm run update-transifex in the command line to upload the source en/messages.json file to Transifex.

Contact us

If you prefer a more informal method of getting in touch or starting a conversation, please join us on Discord or leave a comment in the discussion section. We will monitor any discussions there and join in, and it may be a more appropriate venue for opinions and less urgent suggestions.