mavenlink-js
v1.2.1
Published
This repository encapsulates shared assets and the Mavenlink Backbone Models and Collections used to interact with the Mavenlink API.
Downloads
7
Readme
Mavenlink JS
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": "[email protected]: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)
- Add Model with correct
brainstem_key
andurl
properties insrc/models
- Add index entry for Model in
src/models/index.coffee
(in alphabetical order) - Add Collection with correct
url
andmodel
properties insrc/collections
- Add index entry for Collection in
src/collections/index.coffee
(in alphabetical order) - Add the collection the storage manager in
src/base.coffee
(in alphabetical order) - Add to the builders in
src/helpers/builders.coffee
in order generate models for testing purposes - 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
Develop your application against a local checkout of mavenlink-js
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
Develop/Update your application against a remote checkout of mavenlink-js
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": "[email protected]:mavenlink/mavenlink-js.git#your-branch-or-SHA"
Run yarn upgrade mavenlink-js