Updated the WebWorldWind npm project's build dependencies to ensure compatibility with the latest version of Node.js, Grunt, Karma, and Jasmine. While changes like this are always worthwhile, I'm making it now to ensure that the original WebWorldWind source and its accompanying npm project will continue to operate for as long as possible after the [WorldWind project's suspension on April 5, 2019](https://worldwind.arc.nasa.gov/news/2019-03-08-suspension-notice). Secondary goals are eliminating all npm audit warnings from old versions of libraries used to build WebWorldWind (i.e. the devDependencies) and ensuring that unit tests continue to operate. Summary of changes: - WebWorldWind now builds with Node.js 10.15.3 LTS and 11.12.0. The README file and the Travis CI configuration file reflect that. - All npm devDependencies, used for building the WorldWind project, are updated to the latest version available as of this pull request. - All npm security audit vulnerabilities are addressed. - Subtle errors in unit tests fixed. WorldWind's geometric unit tests erroneously modified global variables, such as Location.ZERO. These values shouldn't be encoded as global variables, but solving that is out of scope here. Previous versions of Jasmine concealed this problem but these unit tests fail with Jasmine 3.x, likely due to a change in the Jasmine interpreter lifecycle between tests.
Web WorldWind
WorldWind team would like to inform you that starting April 5, 2019, NASA WorldWind project will be
suspended. All the WorldWind servers providing elevation and imagery will be unavailable. While you
can still download the SDKs from GitHub, there will be no technical support. If you have questions
and/or concerns, please feel free to email at:
worldwind-info@lists.nasa.gov
3D virtual globe API in JavaScript for the web, developed by NASA. The European Space Agency has provided valuable contributions to this platform since 2015. Web WorldWind provides a geographic context, complete with terrain, and a collection for shapes for displaying and interacting with geographic or geo-located information in 3D and 2D in any modern web browser. High-resolution terrain and imagery is retrieved from remote servers automatically as needed, while enabling developers to include their own custom terrain and imagery.
- worldwind.arc.nasa.gov has setup instructions, developers guides, API documentation and more
- Forum provides help from the WorldWind community
- WebStorm is used by the NASA WorldWind development team
Get Started
The Web WorldWind Developer's Guide has a complete description of Web WorldWind's functionality. You'll also find there links to many Web WorldWind resources, including a user guide. The latest Web WorldWind release provides many simple examples showing how to use all of Web WorldWind's functionality.
Building
Install NodeJS. The build is known to work with Node.js v10.15.3 (LTS).
-
npm installdownloads WorldWind's dependencies -
npm run buildbuilds everything -
npm run docgenerates the WorldWind API documentation -
npm run testruns WorldWind's unit tests -
npm run test:watchautomatically runs WorldWind's unit tests when source code changes
License
Copyright 2003-2006, 2009, 2017, United States Government, as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.
The NASAWorldWind/WebWorldWind platform 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.