bodhi-ui

    1.0.4-regtest • Public • Published

    Bodhi UI

    ReactJS frontend that interacts with the Bodhi backend services

    Travis Build Status

    Get Started

    Requirements

    • Node version greater than 8.6.0
    • Yarn or npm version greater than 6.0.0

    Install

    $ git clone https://github.com/bodhiproject/bodhi-ui.git
    cd bodhi-ui
    $ yarn
    $ yarn upgrade    // this is important
    $ npm install

    Development Environment

    To run the development server, run the corresponding run script and the API will point to the remote server with the correct port. After compilation, it will show success commands & automatically redirect to the browser. Any code changes will be observed and will hot reload.

    // Mainnet chain
    $ yarn start:mainnet
     
    // Testnet chain
    $ yarn start:testnet
     
    // Regtest chain - very fast block mining, can also mine blocks with API call
    $ yarn start:regtest

    Production Build

    To create an optimized production build of the app, you need to run a build command in you terminal at app root. Use the build command specific to the chain you want to point to. The build output files will be in /build.

    // Mainnet chain
    $ yarn build:mainnet
     
    // Testnet chain
    $ yarn build:testnet
     
    // Regtest chain - very fast block mining, can also mine blocks with API call
    $ yarn build:regtest

    Standards

    Javascript Standard

    Airbnb Javascript Style Guide

    Linting

    $ npm run lint:fix    // get sweet link checking and fixing
    $ npm run lint        // to see whats wrong

    Localization

    react-intl is used for localization.

    Using FormattedMessage

    • Try to use FormattedMessage whenever possible.
    • id should match the id in the JSON file with all the strings.
    • Put the default text inside defaultMessage.
    • Dynamic variables can be declared in the values property.
    <FormattedMessage
      id='app.greeting'
      description='Greeting to welcome the user to the app'
      defaultMessage='Hello, {name}!'
      values={{
        name: 'Eric'
      }}
    />

    Using formatMessage

    • For use with inline strings like string templates.
    • Define messages at the top of the file using defineMessages.
    const messages = defineMessages({
      greeting: {
        id: 'app.greeting',
        defaultMessage: 'Hello, {name}!',
      },
    });
     
    const localizedMessage = this.props.intl.formatMessage(messages.greeting, { { name: 'Eric' }});
    // localizedMessage = 'Hello, Eric!'

    Run Language Script

    1. Run npm run build:langs
    2. Update the newly translated strings in the corresponding language file. The language file is in ./src/languageProvider/locales.

    LGPL-3.0 License

    Keywords

    none

    Install

    npm i bodhi-ui

    DownloadsWeekly Downloads

    8

    Version

    1.0.4-regtest

    License

    none

    Unpacked Size

    5.64 MB

    Total Files

    126

    Last publish

    Collaborators

    • dwalintukan