Revelio is a sandbox for migrating Intrigue features off of Backbone and Marionette towards GraphQL and React.
There are several reasons for this that will be covered in the architecture section but the gist of it is that we have hit limitations, both in terms of complexity and performance, and need to make these changes so we can continue growing our software. Our goals are to component-ize Intrigue to make it easier to build other similar application and reduce the overall complexity budget required to develop new features.
The intention is to keep revelio as as separate project from DDF (as that is inline with the current efforts to split apart the system) and gradually port over features into revelio. In time, when components start to stabilize, we will port them to atlas or dedicated spaces for more specialized components, such as geospatialdraw.
Revelio should be run alongside an instance of DDF. Changes made on DDF (creating/deleting workspaces, result forms, etc.) will then be reflected in Revelio. Revelio uses the RPC API to communicate with DDF. The jar for the rpc endpoint will need to be hot deployed to DDF.
yarn install
yarn start
One thing to note, please ensure minimum yarn version is at least v1.21.0
. You may encounter errors such as Error: Cannot find module 'MODULE NAME HERE'
if your yarn version is not high enough.
To run the production JavaScript code, do:
yarn build:prod
And then to start the node process, do:
yarn start:prod
Docker containers can be found here and can be run with the following command:
docker run --rm -it -p 4000:4000 -e DDF_LOCATION=<ddf-url> cnxta/revelio:<version>
NOTE: the docker container needs network access to DDF for this to work.
To get a deeper look into the system, take a look at the architecture docs.
For information on GraphQL development tools, take a look at the GraphQL Tools docs.
First bump the version in the package.json
Then build the library:
yarn build:library
Finally publish the library:
npm publish dist