Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into open933-c
Browse files Browse the repository at this point in the history
# Conflicts:
#	platform/commonUI/edit/res/templates/create/create-menu.html
#	platform/commonUI/general/res/fonts/symbols/wtdsymbols.eot
#	platform/commonUI/general/res/fonts/symbols/wtdsymbols.svg
#	platform/commonUI/general/res/fonts/symbols/wtdsymbols.ttf
#	platform/commonUI/general/res/fonts/symbols/wtdsymbols.woff
#	platform/commonUI/general/res/sass/_archetypes.scss
#	platform/commonUI/general/res/sass/_constants.scss
#	platform/commonUI/general/res/sass/_icons.scss
#	platform/commonUI/general/res/sass/_main.scss
#	platform/commonUI/general/res/sass/_mixins.scss
#	platform/commonUI/general/res/sass/controls/_buttons.scss
#	platform/commonUI/general/res/templates/controls/time-controller.html
#	platform/commonUI/themes/snow/res/sass/_constants.scss
  • Loading branch information
charlesh88 committed Aug 2, 2016
2 parents 579c6b6 + d1e1ba1 commit c699cb8
Show file tree
Hide file tree
Showing 1,081 changed files with 8,589 additions and 7,248 deletions.
8 changes: 4 additions & 4 deletions LICENSES.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Open MCT Web Licenses
# Open MCT Licenses

Open MCT Web, Copyright (c) 2014-2015, United States Government as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.
Open MCT, Copyright (c) 2014-2016, United States Government as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.

Open MCT Web is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Open MCT is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Open MCT Web includes source code licensed under additional open source licenses as follows.
Open MCT includes source code licensed under additional open source licenses as follows.

## Software Components Licenses

Expand Down
97 changes: 62 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,67 @@
# Open MCT [![license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)

Open MCT is a web-based platform for mission operations user interface
software.
Open MCT is a next-generation mission control framework for visualization of data on desktop and mobile devices. It is developed at NASA's Ames Research Center, and is being used by NASA for data analysis of spacecraft missions, as well as planning and operation of experimental rover systems. As a generalizable and open source framework, Open MCT could be used as the basis for building applications for planning, operation, and analysis of any systems producing telemetry data.

Please visit our [Official Site](https://nasa.github.io/openmct/) and [Getting Started Guide](https://nasa.github.io/openmct/getting-started/)

## See Open MCT in Action

Try Open MCT now with our [live demo](https://openmct-demo.herokuapp.com/).
![Demo](https://nasa.github.io/openmct/static/res/images/Open-MCT.Browse.Layout.Mars-Weather-1.jpg)

## Building and Running Open MCT Locally

Building and running Open MCT in your local dev environment is very easy. Be sure you have [Git](https://git-scm.com/downloads) and [Node.js](https://nodejs.org/) installed, then follow the directions below. Need additional information? Check out the [Getting Started](https://nasa.github.io/openmct/getting-started/) page on our website.

1. Clone the source code

`git clone https://github.com/nasa/openmct.git`

2. Install development dependencies

`npm install`

3. Run a local development server

`npm start`

Open MCT is now running, and can be accessed by pointing a web browser at [http://localhost:8080/](http://localhost:8080/)

## Documentation

Documentation is available on the [Open MCT website](https://nasa.github.io/openmct/documentation/). The documentation can also be built locally.

### Building the Open MCT Documentation Locally
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`.

## Deploying Open MCT

Open MCT is built using [`npm`](http://npmjs.com/)
and [`gulp`](http://gulpjs.com/).

To build Open MCT for deployment:

`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).

## Bundles

Expand Down Expand Up @@ -54,39 +114,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`.

# Glossary

Certain terms are used throughout Open MCT with consistent meanings
Expand Down
2 changes: 2 additions & 0 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@
process.exit(0);
}

app.disable('x-powered-by');

// Override bundles.json for HTTP requests
app.use('/' + BUNDLE_FILE, function (req, res) {
var bundles;
Expand Down
6 changes: 3 additions & 3 deletions build-docs.sh
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
#!/bin/bash

#*****************************************************************************
#* Open MCT Web, Copyright (c) 2014-2015, United States Government
#* Open MCT, Copyright (c) 2014-2016, United States Government
#* as represented by the Administrator of the National Aeronautics and Space
#* Administration. All rights reserved.
#*
#* Open MCT Web is licensed under the Apache License, Version 2.0 (the
#* Open MCT is licensed under the Apache License, Version 2.0 (the
#* "License"); you may not use this file except in compliance with the License.
#* You may obtain a copy of the License at
#* http://www.apache.org/licenses/LICENSE-2.0.
Expand All @@ -16,7 +16,7 @@
#* License for the specific language governing permissions and limitations
#* under the License.
#*
#* Open MCT Web includes source code licensed under additional open source
#* Open MCT includes source code licensed under additional open source
#* licenses. See the Open Source Licenses file (LICENSES.md) included with
#* this source code distribution or the Licensing information page available
#* at runtime from the About dialog for additional information.
Expand Down
6 changes: 3 additions & 3 deletions docs/gendocs.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/*****************************************************************************
* Open MCT Web, Copyright (c) 2014-2015, United States Government
* Open MCT, Copyright (c) 2014-2016, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT Web is licensed under the Apache License, Version 2.0 (the
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
Expand All @@ -14,7 +14,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT Web includes source code licensed under additional open source
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
Expand Down
16 changes: 8 additions & 8 deletions docs/src/design/planning/APIRefactor.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# API Refactoring

This document summarizes a path toward implementing API changes
from the [API Redesign](../proposals/APIRedesign.md) for Open MCT Web
from the [API Redesign](../proposals/APIRedesign.md) for Open MCT
v1.0.0.

# Goals
Expand Down Expand Up @@ -161,7 +161,7 @@ be included in a straightforward fashion.

Some goals for this build step:

* Compile (and, preferably, optimize/minify) Open MCT Web
* Compile (and, preferably, optimize/minify) Open MCT
sources into a single `.js` file.
* It is desirable to do the same for HTML sources, but
may wish to defer this until a subsequent refactoring
Expand All @@ -170,7 +170,7 @@ Some goals for this build step:
derivative projects in a straightforward fashion.

Should also consider which dependency/packaging manager should
be used by dependent projects to obtain Open MCT Web. Approaches
be used by dependent projects to obtain Open MCT. Approaches
include:

1. Plain `npm`. Dependents then declare their dependency with
Expand Down Expand Up @@ -203,15 +203,15 @@ to use for asset generation/management and compilation/minification/etc.

## Step 3. Separate repositories

Refactor existing applications built on Open MCT Web such that they
Refactor existing applications built on Open MCT such that they
are no longer forks, but instead separate projects with a dependency
on the built artifacts from Step 2.

Note that this is achievable already using `bower` (see `warp-bower`
branch at http://developer.nasa.gov/mct/warp for an example.)
However, changes involved in switching to an imperative API and
introducing a build process may change (and should simplify) the
approach used to utilize Open MCT Web as a dependency, so these
approach used to utilize Open MCT as a dependency, so these
changes should be introduced first.

## Step 4. Design registration API
Expand Down Expand Up @@ -287,7 +287,7 @@ or separately in parallel) and should involve a tight cycle of:
planning should be done to spread out the changes incrementally.

By necessity, these changes may break functionality in applications
built using Open MCT Web. On a case-by-case basis, should consider
built using Open MCT. On a case-by-case basis, should consider
providing temporary "legacy support" to allow downstream updates
to occur as a separate task; the relevant trade here is between
waste/effort required to maintain legacy support, versus the
Expand All @@ -299,11 +299,11 @@ across several repositories.

Update bundles to remove any usages of legacy support for bundles
(including that used by dependent projects.) Then, remove legacy
support from Open MCT Web.
support from Open MCT.

## Step 8. Release candidacy

Once API changes are complete, Open MCT Web should enter a release
Once API changes are complete, Open MCT should enter a release
candidacy cycle. Important things to look at here:

* Are changes really complete?
Expand Down
26 changes: 13 additions & 13 deletions docs/src/design/proposals/APIRedesign.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Overview

The purpose of this document is to review feedback on Open MCT Web's
The purpose of this document is to review feedback on Open MCT's
current API and propose improvements to the API, particularly for a
1.0.0 release.

Expand Down Expand Up @@ -64,7 +64,7 @@ useful, powerful interfaces.
## Developer Intern Feedback

This feedback comes from interns who worked closely with
Open MCT Web as their primary task over the Summer of 2015.
Open MCT as their primary task over the Summer of 2015.

### Developer Intern 1

Expand Down Expand Up @@ -104,7 +104,7 @@ Worked on bug fixes in the platform and a plugin for search.

Worked on platform bug fixes and mobile support.

* No guide for the UI and front end for the HTML/CSS part of Open MCT Web.
* No guide for the UI and front end for the HTML/CSS part of Open MCT.
Not sure if this is applicable or needed for developers, however would
be helpful to any front end development
* Found it difficult to follow the plot controller & subplot
Expand All @@ -118,11 +118,11 @@ Worked on platform bug fixes and mobile support.
## Plugin Developer Feedback

This feedback comes from developers who have worked on plugins for
Open MCT Web, but have not worked on the platform.
Open MCT, but have not worked on the platform.

### Plugin Developer 1

Used Open MCT Web over the course of several months (on a
Used Open MCT over the course of several months (on a
less-than-half-time basis) to develop a
spectrum visualization plugin.

Expand All @@ -138,7 +138,7 @@ spectrum visualization plugin.

### Plugin Developer 2

Used Open MCT Web over the course of several weeks (on a half-time basis)
Used Open MCT over the course of several weeks (on a half-time basis)
to develop a tabular visualization plugin.

* Pain points
Expand Down Expand Up @@ -197,7 +197,7 @@ to develop a tabular visualization plugin.
## Long-term Developer Notes

The following notes are from original platform developer, with long
term experience using Open MCT Web.
term experience using Open MCT.

* Bundle mechanism allows for grouping related components across concerns,
and adding and removing these easily. (e.g. model and view components of
Expand All @@ -220,7 +220,7 @@ or reducing the Angular dependency.

### Angular's Role

Angular is Open MCT Web's:
Angular is Open MCT's:

* Dependency injection framework.
* Template rendering.
Expand Down Expand Up @@ -268,7 +268,7 @@ by experience:

* Feedback from new developers is that Angular was a hindrance to
training, not a benefit. ("One more thing to learn.") Significant
documentation remains necessary for Open MCT Web.
documentation remains necessary for Open MCT.
* Expected enhancements to maintainability will be effectively
invalidated by an expected Angular end-of-life.
* Data binding and automatic view updates do save development effort,
Expand Down Expand Up @@ -526,7 +526,7 @@ subset of `$http`'s functionality.

### Detriments

* Increases the number of interfaces in Open MCT Web. (Arguably,
* Increases the number of interfaces in Open MCT. (Arguably,
not really, since the same interfaces would exist if exposed
by Angular.)

Expand Down Expand Up @@ -574,7 +574,7 @@ This would also allow for "composite bundles" which serve as
proxies for multiple bundles. The `BundleContext` could contain
(or later be amended to contain) filtering rules to ignore
other bundles and so forth (this has been useful for administering
Open MCT Web in subtly different configurations in the past.)
Open MCT in subtly different configurations in the past.)

### Benefits

Expand Down Expand Up @@ -827,7 +827,7 @@ This could be resolved by:

## Nomenclature Change

Instead of presenting Open MCT Web as a "framework" or
Instead of presenting Open MCT as a "framework" or
"platform", present it as an "extensible application."

This is mostly a change for the developer guide. A
Expand Down Expand Up @@ -1040,7 +1040,7 @@ This is a more specific variant of
* Removes a whole category of API (bundle definitions), reducing
learning curve associated with the software.
* Closer to Angular style, reducing disconnect between learning
Angular and learning Open MCT Web (reducing burden of having
Angular and learning Open MCT (reducing burden of having
to learn multiple paradigms.)
* Clarifies "what can be found where" (albeit not perfectly)
since you can look to module dependencies and follow back from there.
Expand Down
2 changes: 1 addition & 1 deletion example/README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
This directory is for example bundles, which are intended to illustrate
how to author new software components using Open MCT Web.
how to author new software components using Open MCT.
6 changes: 3 additions & 3 deletions example/builtins/bundle.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/*****************************************************************************
* Open MCT Web, Copyright (c) 2014-2015, United States Government
* Open MCT, Copyright (c) 2014-2016, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT Web is licensed under the Apache License, Version 2.0 (the
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
Expand All @@ -14,7 +14,7 @@
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT Web includes source code licensed under additional open source
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
Expand Down
Loading

0 comments on commit c699cb8

Please sign in to comment.