UCSC Xena Client. Functional genomics visualizations.
This is a browser app, written in javascript. The primary technologies we use
are React, the
HTML 2d canvas API,
and RxJS. We use babel for
es6 support, and webpack
for the build.
The application architecture looks a lot like redux, but was developed before
redux was a thing. So, we can use redux dev tooling, and the reselect lib, but
we currently do not use redux itself. The async model is in the direction of
redux-observable, with action side-effects invoking rx streams that will then
dispatch later actions.
Further doc links:
* Architecture overview
* State updates, in detail
* Debug strategies, widget hierarchy, etc.
* Writing an action handler
brew install gitbrew install nodegit clone https://github.com/acthp/ucsc-xena-client.gitcd ucsc-xena-clientnpm installnpm startThere may be npm warnings about missing redux libraries, but these can be ignored. We're not using redux. We're
just using redux tooling.