Home

Awesome

Digital Paper Edit - Electron

Electron Cross Platform Desktop app

---> Work in progress <--

For a ready to use release of the desktop application, checkout the user instructions for more details on how to get started.

See here for overall project architecture info

Setup

<!-- _stack - optional_ _How to build and run the code/app_ -->
git clone git@github.com:bbc/digital-paper-edit-electron.git
cd digital-paper-edit-electron

Optional step to setup nvm to use node version 10, otherwise just use node version 10

nvm use || nvm install`

in root of project

npm install

Usage

npm start

System Architecture

<!-- _High level overview of system architecture_ -->

Electron Cross platform desktop app

Development env

<!-- _How to run the development environment_ _Coding style convention ref optional, eg which linter to use_ _Linting, github pre-push hook - optional_ -->

Node version is set in node version manager .nvmrc

Build

<!-- _How to run build_ --> <!-- TODO: needs to pull in React front end from npm. eg how it was done in Makefile before build-electron: build-react @echo "Electron build" # does areact-build # clears build folder inside of electron rm -rf ./packages/electron/build rm -rf ./packages/electron/dist # then copies the react build folder into electron folder cp -a ./packages/client/build ./packages/electron/build # build/package electron for mac, wind and linux cd ./packages/electron && npm run build:mwl and then run ``` npm run build:mwl ``` -->

TBC

Tests

TBC

Deployment

<!-- _How to deploy the code/app into test/staging/production_ -->

We use Travis CI to build. The Github access token (from newslabs_deploy user, which is the general News Labs deployment account) is used to deploy. This means that you cannot deploy directly by triggering a build via pushing to master. Because your access token isn't used. You would manually need to trigger the build through the Github UI (which is dumb), because then the changes you make from there is seen as the correct newslabs_deploy user by Travis CI.

There is a ticket to address this workaround: issue

<!-- Probably through Travis or Circle CI -->