node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป

bloom-web

Bloom Web

NPM Login

In order to install all of bloom-web's dependencies you'll need to run npm login with the appropriate npm org credentials. These credentials exist with existing stakeholders who will be happy to share them with you (preferably via LastPass). If this is an emergency, npm org creds can be reset using the bambu-npm@sproutsocial.com email or by consulting with @soung3.

  • npm login must be performed to successfully run npm install - this allows npm to download the bloom-dearborn package as one of the dependencies of bloom-web
  • From anywhere in the terminal, run npm login
    • When prompted for a username, enter the username provided in the LastPass credentials
    • When prompted for a password, enter the password provided in the LastPass credentials
    • When prompted for an email, enter the email contained in the name field of the LastPass credentials
  • npm login should only need to be run once, until / unless the login credentials change. Any subsequent npm install attempts should be able to use the
  • After successfully running npm login, run npm install from your local bloom-web repo directory
  • If npm install fails because of phantomjs, just try running npm install again.

Testing

  • To kick-off tests, run npm test
  • For watch mode, npm test -- --watch
  • Tests are run using Jest and new test specs can be added to the __tests__ directory
  • If you need to update a Jest Snapshot, run npm run test-updateSnapshot.

Gulp Commands

  • gulp serve - Kicks off server and watches for file changes.
  • gulp build - Will build resources to /build/dev (Unminified, untested)

Prepush/Precommit Hooks

It's advised you run tests prior pushing code to your branch. To help facilitate this, bloom-web comes packed with husky which automatically generates a pre-push hook for you. Note, if you've installed dependencies with yarn you may need to run yarn add husky --force Open Issue.

Using 'prettier' with bloom-web

Prettier is an opinionated JavaScript formatter. In order to start using Prettier you don't actually need to do anything, as Prettier will run against all relevant files prior committing to source (we use lint-staged, take a look at the package.json for more info). However, if you want to have the ultimate Prettier experience be sure to add an integration for your editor. You'll want to make sure to enforce single-quote and set the trailing-comma option to es5'.

Deployment

fab stage deploy

OR

fab beta deploy

sublime-react React snippets for Sublime

Want some handy snippets for building React components? Check out bloom-sublime