xod-client

0.37.0 • Public • Published

xod-client

This package is a part of the XOD project.

The package contains the most of code related to the XOD IDE user interface. xod-client is build on React + Redux stack.

xod-client is neutral to platform. That means it doesn’t contain code specific to a particular execution environment like browser or electron.

To make it alive a bootstrapping wrapper is required that would embed the xod-client in a platform specific container. See xod-client-browser xod-client-electron for example.

Source code structure

The source is split into pods. Each pod is a part of whole application which implements a single aspect of the IDE.

Each pod could contain:

  • components/dumb React components
  • containers/smart React components
  • actions.js — Redux action dispatchers
  • actionTypes.js — name symbols for Redux actions
  • reducer.js — Redux reducer that operates on a pod’s state subtree
  • selectors.js — functions to query presentational data from state subtree (see below)
  • state.js — initial state for the pod’s subtree

To work with XOD project state a separate package xod-project is used. Reducers simply delegate state update to xod-project’s functions, selectors, and components use functions from xod-project to access project data. This distincion is done because project state is complex and keeping all machinery inside standard pod layout would make it messy.

Environment variables

  • XOD_HOSTNAME XOD hostname. Default: xod.io

Readme

Keywords

none

Package Sidebar

Install

npm i xod-client

Weekly Downloads

15

Version

0.37.0

License

AGPL-3.0

Unpacked Size

7.16 MB

Total Files

907

Last publish

Collaborators

  • nailxx
  • brusher
  • alexander-matsievsky
  • evgenykochetkov