git clone git@github.com:linxmix/linx-electron
cd linx-electron
npm install
To run in development with live reloading:
npm run start:dev
To run normally,
npm start
To run all the tests:
npm test
To run all the unit tests:
npm run test:unit
To run a specific unit test:
npm run test:unit -- ./samples/helpers/flatten.test.js
To run the standard style linter on all files:
npm run test:lint
To run the standard style linter on a specific file:
npm run test:lint -- ./samples/helpers/flatten.js
Each concept in the application gets its own ${conceptName}/
directory.
Directory structure
*.test.js unit tests (co-located next to file being tested)
lib/* generalized modules, should be moved out of project later
${concept}/ application concepts
main.js electron entry file
index.js application js entry file
index.html application html entry file
config.js application config file
routes.js React-Router top-level routes
reducer.js Redux top-level reducer
Concept structure
routes.js React-Router routes
containers/*.js React components that provide data to children
components/*.js React components that present data
actions.js Redux action creators
reducer.js Redux reducer
service.js service methods
getters.js data selectors