Skip to content

Latest commit

 

History

History
72 lines (44 loc) · 3.86 KB

DEV_DOCS.md

File metadata and controls

72 lines (44 loc) · 3.86 KB
title
Contributing to Auspice development

Thank you for helping us to improve Nextstrain!

To get started, please see the contributing guide for useful information about how to pick an issue, submit your contributions, and so on.

This project strictly adheres to the Contributor Covenant Code of Conduct.

Please see the project boards for currently available issues.

Contributing code

Please see the main auspice docs for details on how to install and run auspice locally.

For pull requests, please use eslint as much as possible (via npm run lint).

Contributing to Documentation

Nextstrain documentation is available at nextstrain.github.io/auspice/.

This documentation is built from files contained within the Auspice GitHub repo -- see the docs-src/README within the docs-src directory for more details and instructions on how to contribute.

Note that currently the documentation must be rebuilt & pushed to GitHub after a new version is released in order for the changelog to correctly appear at nextstrain.github.io/auspice/releases/changelog.

Contributing to Internationalization and Localization (i18n/l18n)

If you can assist in efforts to translate the Auspice interface to more languages your assistance would be very much appreciated. The currently available languages are displayed via a drop-down at the bottom of the sidebar.

Adding a new language:

  1. Add the language to the getlanguageOptions function in this file
  2. If this is a new language, copy the folder (and the JSONs within it) src/locales/en and name it to match the language code for the new translation -- e.g. for Spanish this would be src/locales/es
  3. For each key-value in the JSONs, translate the english phrase to the new locale. (Do not modify the strings within {{...}} sections.)

For example, a spanish translation would change the English:

  "sampled between {{from}} and {{to}}": "sampled between {{from}} and {{to}}",
  "and comprising": "and comprising",

to

  "sampled between {{from}} and {{to}}": "aislados entre {{from}} y {{to}}",
  "and comprising": "y compuesto de",

Helper script to check what parts of a translation are out-of-date or missing:

Run npm run diff-lang -- X, where X is the language you wish to check, for instance es. This will display the strings which:

  • need to be added to the translation
  • are present but should be removed as they are no longer used
  • are present but are simply a copy of the English version & need to be translated

Running npm run diff-lang will check all available languages.

Improving an existing translation:

If a translation of a particular string is not yet available, then auspice will fall-back to the english version.

  1. Find the relevant key in the (EN) JSONs in this directory
  2. Add the key to the JSON with the same name, but in the directory corresponding to the language you are translating into (see above for an example).

Releases & versioning

New versions are released via the ./releaseNewVersion.sh script from an up-to-date master branch. It will prompt you for the version number increase, push changes to the release branch and, as long as Travis-CI is successful then a new version will be automatically published to npm.