npm package: @jebbit/jebbit-bar-components
Description: The Jebbit bar UI abstracted into components in an addon
Latest version: 0.1.3

# Jebbit Bar Components

House rules (following open source best practices):

- All changes should be released under semver
- All changes should go through the usual PR review process
- All releases should be released on Github and NPM

## Installation

Make sure you're running Node > ~0.2.6:

```
sudo npm install npm -g
```

## Installing in a Jebbit app

```sh
npm install --save-dev @jebbit/jebbit-bar-components
```

## Development of the addon

You can run and change this addon like any other Ember addon.

```sh
git clone git@github.com:jebbit/jebbit-bar-components.git
cd jebbit-bar-components
npm install
bower install
ember s
```

This will run the dummy app at `//localhost:4200`. You can make your changes, commit, and release on NPM.

If you would like to run the addon inside a consuming app (e.g. the bar or admin app) the addon will livereload inside the app when set up correctly...

### Step 1

To link a local version of the addon to the bar or admin apps clone the repo as described above. Then prep the consuming app:

```sh
cd jebbit/frontend/app-name # admin or bar
npm uninstall --save-dev @jebbit/jebbit-bar-components
npm cache clean
```

### Step 2

Now, you must make your local version of this addon available throughtout all repos on your machine:

```sh
cd ../../jebbit-bar-components

# Bump the version for your upcoming work
npm version minor # npm version [<newversion> | major | minor | patch | premajor | preminor | prepatch | prerelease]

# Enable local package linking for this repo
npm link
```

### Step 3

Finally, add the addon to the consuming app's `package.json` file:

```json
devDependencies: {
  "jebbit-bar-components": "*"
}
```

Then install the local version of the addon in the consuming app:

```sh
cd ../jebbit/frontend/app-name # admin or bar
npm link jebbit-bar-components
```

Changes to this addon will now auto-reload the consuming app as if they were part of the same codebase.

### A Word of Warning

**Please note**, you do not want to commit the changes you've made to the consuming app to production. I suggest making a branch for testing the addon that isn't a feature branch. That way you can just keep a local branch with these changes everytime you need to develop the addon inside another app.

## Publishing Changes

All changes made to this addon should be published under [semver](http://semver.org/) on Github *and* NPM. This will enable us to keep our multiple apps in sync.

To publish your changes, I highly reccomend using [Release It](https://github.com/webpro/release-it).

If you don't have `release-it` installed locally, run:

```sh
npm install -g release-it
```

Then, for each release:

```sh
npm login # Use the Jebbit account information or your own if you are a collaborator on this addon's NPM repo

release-it # For patches
# or
release-it --minor # For minor version bumps
# or
release-it --major # For major version bumps

npm logout # If you have a personal NPM account
```

### Collaborators

Your personal account can be added as a collaborator for this addon through the [NPM site here](https://www.npmjs.com/package/@jebbit/jebbit-bar-components/access).

For more information on using ember-cli, visit [http://www.ember-cli.com/](http://www.ember-cli.com/).