## <span id="getting-started">Getting Started</a>
Follow these quick steps to get BrightWork registered and the CLI installed on your machine

### <span id="signup">Signup</a>
You can request an invitation by going to our website: http://www.brightwork.io/#signup


### <span id="prerequisites">Prerequisites</a>
Make sure you have NodeJS installed. The minimum required version is node 3.0 you can check this with the following command.
```bash
node -v
```
#### Installing Node
##### OSX (homebrew)
```bash
brew install node
```

##### OSX (bash)
```bash
curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"
```

##### Windows
Just download the installer here:  https://nodejs.org/en/#download

##### Other
https://nodejs.org/en/download/package-manager 

### <span id="install-the-cli">Install the CLI</span>
```bash
npm install -g bw-cli
```

### <span id="login">Login</a>
Login will authenticate your account using the supplied username/password and cache an expiring JWT token for future CLI requests.
```bash
bw login
username: yourname@somewhere.com
password: yourpassword
```

### <span id="configure">Configure</a>
```bash
bw configure
api: http://api.brightwork.io
```
Check your configuration
```bash
bw info
```

## <span id="setup-project">Setting up your project</span>
Every project (app) should have it's own clean working directory to start.  Follow the steps below to setup a new
project and initialize a sample app manifest.  This example assume your base working directory will be your home (~) folder.

### Setup your working folder, ours is called "photoapp"
```bash
cd ~
mkdir photoapp
```

### New let's initialize our app with the sample app manifest
```bash
bw init
```
```yaml
--->  manifest.yml
name: yourappname
models:
  album:
    attributes:
      name: string
      photos:
        collection: 'photo'
        via: 'album'
  photo:
    attributes:
      caption: string
      url: string
      album:
        model: 'album'
```
*_don't forget to edit your manifest.yml and supply an app name_

## <span id="contact-and-support">Contact & Support</a>
We're always trying to improve our product. Get in touch with us by email: <support@brightwork.io>