XOD

Build Status Build status

Deployment on localhost

Install all dependencies and perform package cross-linking with:

$ yarn install

Build the code:

$ yarn run build

Browser IDE

$ yarn run dev -- xod-client-browser

Open http://localhost:8080 in your browser.

Desktop IDE

$ yarn run electron-rebuild
$ yarn run start:xod-client-electron

Maintenance Scripts

Cleaning

  • yarn run clean:dist removes all build artifacts
  • yarn run clean:node_modules removes all installed node_modules in all packages
  • yarn run clean resets the sandbox to just-cloned state

Verification

  • yarn run lint performs lint-checking in all packages
  • yarn run test -- <name> --only runs test on package with specified <name>. E.g. yarn run test -- xod-client --only.
  • yarn run test -- <name> runs test on package with specified <name>, and all packages it depends on directly or indirectly. E.g. yarn run test -- xod-client.
  • yarn test tests all packages
  • yarn run verify builds lints and tests; run this prior to pull request
  • yarn run ci installs and verifies; used as a script for CI-server

Building

  • yarn run build builds all packages
  • yarn run build -- <name> --only builds a package with specified <name>, e.g. yarn run build -- xod-cli --only
  • yarn run build -- <name> builds a package with specified <name> and all its dependencies, e.g. yarn run build -- xod-client-electron
  • yarn run dev -- <name> --only builds a package with specified <name> and stays in watch mode with auto-rebuild when its files change, e.g. yarn run dev -- xod-cli --only
  • yarn run dev -- <name> builds a package with specified <name> and all its dependencies, then stay in watch mode looking for changes in that package or any of its dependencies; e.g. yarn run dev -- xod-client-browser

Packaging

  • yarn run bootsrap creates all necessary links between local packages and installs their dependencies

Distributing

  • Creates a distribution artifact corresponding to host's platform:

    yarn install
    yarn run verify
    yarn run electron-dist
    

Contributing

Feel free to contribute to the project! Make sure to read contribution guidelines.

Jetbrains users can benefit from XOD Jetbrains Live Template.

Languages
JavaScript 78.9%
C++ 11.7%
Reason 4.9%
SCSS 4.2%
Shell 0.1%