Skip to content

Instantly share code, notes, and snippets.

@rayshan
Last active August 29, 2015 14:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rayshan/2ce427a9e10829ab3b5f to your computer and use it in GitHub Desktop.
Save rayshan/2ce427a9e10829ab3b5f to your computer and use it in GitHub Desktop.
Montage .info (draft)

Montage .info

  • TOC {:toc}
  • Live side-by-side to component, not nested inside .reel b/c not everything has .reel
  • Tests should eventually be moved to .info so they can be run by-component; should include both unit & E2E tests
  • Rename .meta to blueprint.mjson, then moving into .info dir, which contains metadata of component, only needed for Studio
  • Eventually would contain other .mjson files, which would contain serialization that serve other purposes other than blueprint, e.g. paths for flow.reel or animation specs, can be used in other serialization
  • For Montage components, .info’s .reel should require version of Montage it’s committed to
  • There should be 1 main.reel loaded by Studio, multiple examples can be offered with Substitution component

Directory Structure

  • /component.reel
    • component.js (js-specific docs should all be in here as JSDocs)
    • component.html
    • component.css
  • /component.info (any JSDoc in this folder will be excluded from API docs build, as they could collide w/ other components’ JSDoc)
    • index.html - change mainModule to sample/main.reel
    • package.json - for Montage framework development, require montage as dependency with relative path to parent montage directory
    • /sample
      • /main.reel - required, loaded by Studio
      • /sample1.reel - optional, referenced from main.reel
      • /sample2.reel - optional, referenced from main.reel
      • /assets - optional
      • ...
    • /test (include unit, UI & E2E tests, commit to test folder in root for now until we enable running tests in .info folders)
    • /docs (js-specific docs should all be in .js in .reel as JSDocs, samples should be in sample folder, this should only include docs not included in those places w/o duplicated content, e.g. on algorithm)
      • docs.md
    • blueprint.mjson for Studio
    • other .mjsons

Examples:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment