Please see parent directory README.md.
As of October, 2015, we're still using React.createClass(), rather than extending React.Component.
We may change this in the near future.
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
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