#Speakr Services Module
- Prerequisites
- Commands
- Publishing

#Prerequisites
##Accounts
  - Github
    - [Sp3kr Organization](https://github.com/Sp3kr)
  - npm
    - [@speakr Organization](https://www.npmjs.com/package/@speakr)
##Applications
- Node Version Manager (nvm)
  - Install nvm
    - [https://github.com/creationix/nvm](https://github.com/creationix/nvm)
  - Set Permalink for NVM in bash_profile
    - `vi ~/.bash_profile`
    - Add the export (Copy & Paste to .bash_profile)
      - export NVM_DIR="$HOME/.nvm"
        [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
  - Install the correct version of node
    - `nvm install 6.2.1`
  - Use the .nvmrc to set default
    - `nvm use`
##Global npm modules
- [https://github.com/sequelize/cli](https://github.com/sequelize/cli)
  - `npm install -g sequelize-cli`
- [https://www.npmjs.com/package/eslint](https://www.npmjs.com/package/eslint)
  - `npm install -g eslint`

#Commands
##npm commands
- Login into npm
  - `npm login`
- Publish an npm package
  - Change the Semantic Versioning number in the package.json
  - Given a version number MAJOR.MINOR.PATCH, increment the:
    - MAJOR version when you make incompatible API changes,
    - MINOR version when you add functionality in a backwards-compatible manner,
    - PATCH version when you make backwards-compatible bug fixes.
    - Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.
  - `npm publish`

##Sequelize commands
- Seed the DB: All
  - `sequelize db:seed:all`
- Seed the DB: {Table Name}
  - `sequelize db:seed:{table_name}`
    - roles
    - profiles
    - hashes
    - emails
    - profile-roles
