diff --git a/README.md b/README.md index c21888dbc8..b93b9529d1 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,59 @@ Open MCT is a web-based platform for mission operations user interface software. +## Build + +Open MCT is built using [`npm`](http://npmjs.com/) +and [`gulp`](http://gulpjs.com/). + +To build: + +`npm run prepublish` + +This will compile and minify JavaScript sources, as well as copy over assets. +The contents of the `dist` folder will contain a runnable Open MCT +instance (e.g. by starting an HTTP server in that directory), including: + +* A `main.js` file containing Open MCT source code. +* Various assets in the `example` and `platform` directories. +* An `index.html` that runs Open MCT in its default configuration. + +Additional `gulp` tasks are defined in [the gulpfile](gulpfile.js). + +### Building Documentation + +Open MCT's documentation is generated by an +[npm](https://www.npmjs.com/)-based build. It has additional dependencies that +may not be available on every platform and thus is not covered in the standard +npm install. Ensure your system has [libcairo](http://cairographics.org/) +installed and then run the following commands: + +* `npm install` +* `npm install canvas nomnoml` +* `npm run docs` + +Documentation will be generated in `target/docs`. + +### Building Open MCT +Once downloaded, Open MCT can be built with the following command: + + npm install + +This will install various dependencies, build CSS from Sass files, run tests, +and lint the source code. + +It's not necessary to do this after every code change, unless you are making +changes to stylesheets, or you are running the minified version of the app +(under `dist`). + +### Running Open MCT + +Once built, Open MCT can be run using the command: + + npm start + +For more information on building and running Open MCT, please see our getting started guide - https://nasa.github.io/openmct/getting-started/ + ## Bundles A bundle is a group of software components (including source code, declared @@ -54,43 +107,6 @@ To run: * `npm install` * `npm run all` -## Build - -Open MCT is built using [`npm`](http://npmjs.com/) -and [`gulp`](http://gulpjs.com/). - -To build: - -`npm run prepublish` - -This will compile and minify JavaScript sources, as well as copy over assets. -The contents of the `dist` folder will contain a runnable Open MCT -instance (e.g. by starting an HTTP server in that directory), including: - -* A `main.js` file containing Open MCT source code. -* Various assets in the `example` and `platform` directories. -* An `index.html` that runs Open MCT in its default configuration. - -Additional `gulp` tasks are defined in [the gulpfile](gulpfile.js). - -### Building Documentation - -Open MCT's documentation is generated by an -[npm](https://www.npmjs.com/)-based build. It has additional dependencies that -may not be available on every platform and thus is not covered in the standard -npm install. Ensure your system has [libcairo](http://cairographics.org/) -installed and then run the following commands: - -* `npm install` -* `npm install canvas nomnoml` -* `npm run docs` - -Documentation will be generated in `target/docs`. - -### Run the app - -Please see [tutorial](https://github.com/nasa/openmct/blob/master/docs/src/tutorials/index.md) - # Glossary Certain terms are used throughout Open MCT with consistent meanings