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.
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 testAdding an endpoint (Model + Collection)
- Add Model with correct
brainstem_keyandurlproperties insrc/models - Add index entry for Model in
src/models/index.coffee(in alphabetical order) - Add Collection with correct
urlandmodelproperties 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.coffeein 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
