npm.io
1.2.1 • Published 8 years ago

mavenlink-js

Licence
UNLICENSED
Version
1.2.1
Deps
8
Size
224 kB
Vulns
0
Weekly
0

This repository encapsulates shared assets and the Mavenlink Backbone Models and Collections used to interact with the Mavenlink API.

Styleguide Installation

Add this line to your application's Gemfile:

gem 'mavenlink-js'

The models will then be available via the Rails asset pipeline.

Bootstrap the following on the global JavaScript namespace:

window.Mavenlink.svgImagePath = 'path/to/compiled/svg';

API Installation

Add dependency to your application's package.json

"dependencies": {
    ...
    "mavenlink-js": "git@github.com:mavenlink/mavenlink-js.git#[SHA]",
    ...
}

Run yarn install

Development

Important: After you merge your branch into master

On bigmaven, update the mavenlink-js dependency in package.json to point back to master. Then run yarn upgrade mavenlink-js which will update yarn.lock (equivalent to Gemfile.lock) to have the new sha.

Be sure to check in yarn.lock so that CI/deploy will grab the right artifacts!

Running Specs

To run the specs on the command line, run:

yarn test
Adding an endpoint (Model + Collection)
  1. Add Model with correct brainstem_key and url properties in src/models
  2. Add index entry for Model in src/models/index.coffee (in alphabetical order)
  3. Add Collection with correct url and model properties in src/collections
  4. Add index entry for Collection in src/collections/index.coffee (in alphabetical order)
  5. Add the collection the storage manager in src/base.coffee (in alphabetical order)
  6. Add to the builders in src/helpers/builders.coffee in order generate models for testing purposes
  7. Add specs for Model and Collection in spec/models/model-name-spec.coffee

For an example, see https://github.com/mavenlink/mavenlink-js/pull/301

In mavenlink-js, run: yarn unlink; yarn install; yarn link

In your application, run: yarn link mavenlink-js

Restart webpack and karma

When you are done, run: yarn unlink mavenlink-js and then yarn install to grab the original mljs package again

Restart webpack and karma

First, make sure you've unlinked mavenlink-js in the application and ensure you are updated with yarn install

In your application, change package.json to point to proper feature branch in dependencies i.e.

"mavenlink-js": "git@github.com:mavenlink/mavenlink-js.git#your-branch-or-SHA"

Run yarn upgrade mavenlink-js