Clone or download the ReQLPro source code from https://github.com/codehangar/reqlpro.git
To install all of ReQLPro's dependencies, open a terminal and navigate to where you cloned or downloaded ReQLPro and run
npm install
Then, to start ReQLPro, run
npm start
Note that ReQLPro requires Nodejs. Check the "engine" field of the package.json
for the version currently being built and testing with: i.e. "engine": "node 6.10.3"
NOTES for developing on Ubuntu:
Must run:
- Before npm install:
sudo apt-get install libsecret-1-dev
- After npm install:
npm rebuild node-sass
NOTES for developing on Windows: Be sure to have node-gyp installed:
- https://github.com/nodejs/node-gyp
npm install --global --production windows-build-tools
- If you receive this error:
ERROR in ENOENT: no such file or directory, scandir '...node-sass...'
- Try running
npm rebuild node-sass
The app
directory has all the HTML, CSS, and Javascript essential to most of the application.
The tools
directory is where scripts related to running (for local development), building, and packaging the
application are held
The shell
directory has all of the files dealing directly with electron setup and configuration.
The dist
directory receives the compiled webpack files
The builds
directory receives:
- a copy of the above
dist
folder - a copy of the
shell
folder - a copy of the
package.build.json
, renamed topackage.json
- NOTE:
package.build.json
has been separated in order to install only the dependencies that are required outside of the webpack-able app, i.e. anything used by scripts found inshell
. This helps reduce the final file size of the applications.
The apps
directory receives:
- Electron builds for Mac, Windows, and Linux
- Packaged
.dmg
for Mac .zip
bundles for Windows and Linux
The coverage
directory receives the output of the istanbul test coverage reports
The app/main.js
file is the entry file for webpack. It is a React front end using Babel to enable JSX, ES6, and ES7
features.
The shell/main.js
is the entry point for electron. This file is similar to a server.js file for a nodejs web server.
It handles spawning the main electron window (renderer) process, and creating the electron menus.
To run the package test script, open a terminal in your reqlpro folder and run
npm test
To run tests with a beautiful Nyan Cat reporter, run
npm run test-nyan
To get a summary of the code coverage of the tests, run
npm run test-coverage
To see the results of the test coverage, run.
npm run server-coverage
To build and package the app, open a terminal in your reqlpro folder and run
npm run pre-build
for any/all Operation Systems
Followed by running one of the below, depending upon your system
npm run build-mac
npm run build-linux
npm run build-windows