Please see parent directory README.md.
We switched to ES6 Classes from React.createClass(). Thus your React components extend React.Component
.
The .eslintrc
file is based on the AirBnb eslintrc.
It also includes many eslint defaults that the AirBnb eslint does not include.
Soon to be in gulpfile....but gulp-eslint depends on eslint depends on
"eslint-plugin-react": "^2.0.2",
So don't use npm run gulp lint
yet.
For now:
bin/lint
Or (from either top level or within client
directory)
npm run lint
npm install -g npm-check-updates
Then run this to update the dependencies (starting at the top level).
# Make sure you are in the top directory, then run:
cd client
rm npm-shrinkwrap.json
npm-check-updates -u
npm install
npm prune
npm shrinkwrap
Then confirm that the hot reload server and the rails server both work fine. You
may have to delete node_modules
and npm-shrinkwrap.json
and then run npm shrinkwrap
.
Note: npm prune
is required before running npm shrinkwrap
to remove dependencies that are no longer needed after doing updates.
Suppose you want to add a dependency to "module_name"....
Before you do so, consider:
- Do we really need the module and the extra JS code?
- Is the module well maintained?
cd client
npm install --save module_name@version
# or
# npm install --save_dev module_name@version
rm npm-shrinkwrap.json
npm shrinkwrap