AppSeed is a starter kit for rapid web application development using nodejs and ES6. This template is wired up with react in mind but you can remove it and just work with ES6 classes. It's the environment and some wired up tools. YOU can choose as little or as much 3rd party dependencies (via Bower or NPM or Github) you like.
Happy coding!
- Node.js > v8.9.1 (which is Nodejs Long Term Support version, older version should work but you gotta move forward!!)
- Bower & Yarn ($ npm i -g yarn bower)
- (Optional) Docker (for testing the DEPLOY folder & running those containers on a server)
- (Optional) Anisble (if you want to auto deploy to your server)
- Wire up ESLint with some global nodejs packages
$ npm i -g eslint eslint-config-airbnb eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-react eslint-config-airbnb-base
AppSeed is aimed at making your web development experience exceptional, here are a couple of tools it uses:
Tech | Description |
---|---|
VS Code Editor | Not manditory but there are some files to help make your development fun. There are some workspace settings that can be found in the ./vscode/settings.json and some settings for debugging in the ./vscode/launch.json. |
Webpack | Web bundler for your development pleasure. |
Babel | Compiles ES6 to ES5, so you can develop using the new version of JavaScript today. |
Bower | A package manager for the web. You can still use NPM for the frontend packages but try to use Bower whenever you can. |
Redux | Redux is a predictable state container for JavaScript apps. |
ESLint | Lint your code as you develop and get tool tips on when you are being naughty |
SASS | Powerful CSS extension language, allows for variables, functions, and more |
PostCSS | Transform styles with JS plugins. Used to autoprefix CSS |
Expressjs | Fast, unopinionated, minimalist werbserver framework for Node.js. It's currently used for a REST API. |
Node Security Project | Node Security helps you keep your node applications secure. |
Jest | JavaScript test framework made simple. |
Istanbul | JavaScript test framework. |
Docker | Have containers for testing locally and using those containers on the server. |
Ansible | Deployment automation to your server. |
Storybook | Great way to develop your react components in isolation before you add them to you website. |
Here a couple of npm commands you can use while developing:
Command | How to run command |
---|---|
Start developing | $ npm start -s |
Build your application | $ npm run build -s |
Only run tests | $ npm test -s |
Only run Storybook | $ npm run storybook -s |