Command line utilities and exporting module for Compositor Lab
npm install @compositor/labCompile lab.json to React components:
lab --out-dir dist/Watch for changes:
lab --out-dir dist/ --watchLab projects can be published in a way that allows them to be installed and imported into other Lab projects from the app.
Export index.js, lab.json, and theme.json for packaging Lab projects:
lab --pkg --out-dir dist/-d --out-dir Output directory -w --watch Watch for changes --pkg Include index.js, lab.json, and theme.json in output The Node API is used by the Lab app to export lab components to React and other formats.
lab(config, [options])
Returns an array of objects for writing to files.
const fs = require('fs') const path = require('path') const lab = require('@compositor/lab') const config = require('./lab.json') const modules = lab(config) modules.forEach(mod => { const filename = path.join(__dirname, 'dist', mod.name + '.js') fs.writeFile(filename, mod.module, err => { if (err) console.log(err) }) })A string key to choose an output mode, one of the following:
Boolean to export the template without transpiling to ES5 syntax.
Currently this module uses templates to output to different formats. These templates can be found in lib/templates/. Using an AST for output with tools like Babel is also possible, but templates were used in an attempt to make it easier to contribute to this project.
See docs/lab-json.md
- Vue.js export (currently in alpha)
- Atomic CSS export
- Support for using third party CSS libraries