Skip to content

Web user interface for the Terra platform

License

Notifications You must be signed in to change notification settings

DataBiosphere/terra-ui

Repository files navigation

Submit an issue here


Terra UI

Web user interface for the Terra platform.


Links:

Support Email an issue Board and backlog


This project was bootstrapped with Create React App.

Guide here.

Builds/deploying handled by CircleCI.

Feature requests

Requests related to the funtionality or usability of the UI can be submitted as issues on this repo. However, as features often impact multiple components of the Terra platform, we recommend users submit feature requests through the main Terra feature request page. See this article for more details.

Developing

  1. We use Node 16 (the current LTS) and Yarn. On Darwin with Homebrew:

    brew install node@16 yarn; brew link node@16 --force --overwrite
  2. Install deps:

    yarn install
  3. Start development server, which will report any lint violations as well:

    yarn start

    If you get an error that resembles:

    Failed to compile.
    
    ./node_modules/react-dev-utils/webpackHotDevClient.js
    Error: [BABEL] /Users/.../terra-ui/node_modules/react-scripts/node_modules/react-dev-utils/webpackHotDevClient.js: Cannot find module '...'
    Require stack:
    - ...
    - ...
    - ... (While processing: "...js")
    

    try:

    rm -rf node_modules
    yarn install
    yarn start
  4. Testing:

    yarn test
  5. Code style and linting:

    • On command line within the repo's root dir: yarn lint
      • Eslint will fix as many violations as possible. It will report any that it can't fix itself.
    • In an IDE other than IntelliJ (VS Code, etc): install the eslint plugin from your package manager, and there should be a command to fix issues at any time.
    • In IntelliJ:
      • Styles should be automatically applied by .editorconfig; make sure you've also turned on eslint.
      • In order to correctly format a file at any time, run the IntelliJ Reformat Code action, and then right-click in a window and click Fix ESLint Problems. You could also create an IntelliJ macro to do this for you as explained here, and map running of the macro to a keyboard shortcut for convenience.

Additional Documentation

See the wiki.