The WorldWide Telescope web client lets you explore the universe in your browser.
Перейти к файлу
thewebkid 256aabcb40 Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
App_Data Fixed numerous issues with popups and dropdowns in mobile. Updated to latest wurfl package. Fixed constellation line color issues 2015-01-22 22:28:21 -08:00
Fakes converted webclient to a asp.net project and added cleaner references. Cleaned up build/run scenario 2014-12-01 21:44:13 -08:00
bootstrap/less Updated bootstrap and changed the way we integrate with bootstrap. Made config changes in gruntfile. Cleaned up webclient.less and variables.less. Variables.less contains our overrides and some mixin shortcuts. 2015-01-25 14:45:44 -08:00
controllers Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
controls Fixed several IE bugs with ng-style expressions. Fixed mars behavior, fixed zooming planets (zooming too far), fixed earth collections not rendering. 2014-12-27 14:14:03 -08:00
css Fixed the ads tab. Not sure how this regressed, but it works now. 2015-01-26 14:46:03 -08:00
dataproxy Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
directives Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
ext Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
factories Fixed survey click behavior. Added MIT license to script output. 2015-02-05 17:19:47 -08:00
views Fixed ads lookup and some other finderscope issues. 2015-02-04 11:32:42 -08:00
.editorconfig Moved grunt to root. Added bower and bower.json to manage external scripts. reconfigured gruntfile, package.json. 2015-01-24 21:04:36 -08:00
.gitattributes Moved grunt to root. Added bower and bower.json to manage external scripts. reconfigured gruntfile, package.json. 2015-01-24 21:04:36 -08:00
.gitignore Moved grunt to root. Added bower and bower.json to manage external scripts. reconfigured gruntfile, package.json. 2015-01-24 21:04:36 -08:00
Default.aspx Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
Default.aspx.cs Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
Gruntfile.js Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
README.md Added versioning to the html5 sdk js output. Starting at 1.0.0. Versions will be ported to cdn.worldwidetelescope.org/html5sdk/x.x.x/wwtsdk.js and wwtsdk.min.js 2015-02-13 16:08:15 -08:00
WURFL AGPL License.txt converted webclient to a asp.net project and added cleaner references. Cleaned up build/run scenario 2014-12-01 21:44:13 -08:00
app.js Refactor Thumbnail controller into 3 smaller controllers (explore, search, and contextpanel). Added a thumblist factory that each controller initializes and uses shared functions. 2015-01-22 15:04:24 -08:00
bower.json Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
earth.jpg move webclient to its own directory 2014-11-26 17:49:08 -08:00
favicon.ico move webclient to its own directory 2014-11-26 17:49:08 -08:00
favicon.png move webclient to its own directory 2014-11-26 17:49:08 -08:00
package.json added license path to package.json 2015-02-13 23:43:25 -08:00
packages.config Fixed numerous issues with popups and dropdowns in mobile. Updated to latest wurfl package. Fixed constellation line color issues 2015-01-22 22:28:21 -08:00
sunCorona.png move webclient to its own directory 2014-11-26 17:49:08 -08:00
webclient.csproj Misc code cleanup in webclient. Updated dependencies and some minor errors. Added license changes 2015-03-17 21:28:31 -07:00
webclient.sln.DotSettings move webclient to its own directory 2014-11-26 17:49:08 -08:00
wwtsdk.js fixed cors issues for flickr, etc. in html5sdk. fixed import of new wtml files. misc fixes to enable to revert to/from scriptsharp versions to test 2015-01-04 20:10:13 -08:00
wwtsdk.min.js fixed cors issues for flickr, etc. in html5sdk. fixed import of new wtml files. misc fixes to enable to revert to/from scriptsharp versions to test 2015-01-04 20:10:13 -08:00

README.md

OpenWWT-Web - WorldWide Telescope

This repository contains the HTML5 SDK which is the rendering engine for the web client and the embeddable web control. It also contains the full web client code. This repository does not contain all the server-side endpoints needed to render tiles, constellation lines, etc. Some samples will be included in the future.

Prerequisites

  • Visual Studio 2013 (Free Community Edition)
  • NodeJs - Only needed if you want to compile the sdk into javascript or run the minified web client js code.

Included Projects

There are two solutions in the repository. The standalone webclient sln includes only the webclient implementation of the Html5sdk. The Html5sdk contains a sln which loads both the html5sdk AND the webclient. Opening the html5sdk sln enables you to compile the c# files into javascript, then run the webclient locally using the modified js output.

Getting Started

  • Decide which .sln you want to run (see above) and open in Visual Studio 2013 or higher.
  • Right-click webclient\default.aspx and point to View In Browser

To Enable grunt (LESS compilation, HTML5SDK Compilation, and JS Minification)

  • In a command prompt, navigate to the webclient root and type npm install to install grunt's dependencies. If you encounter any errors (I always do on a clean machine), ensure %USERPROFILE%\AppData\Roaming\npm exists (create it if not) and your system path includes ;%USERPROFILE%\AppData\Roaming\npm. You can run the ensurenpm.cmd to solve this.
  • Once you have installed the node_modules (via npm install above), install the grunt client. type npm install -g grunt-cli from the same command prompt.
  • Edit webclient\bootstrap\gruntfile.js and remove 'copy:webclient' in the bottom task. Leave an empty string. This task copies the webclient to the worldwidetelescope web site codebase and will clutter your filesystem if you are not developing on the worldwidetelescope.org web site. However if you want to reuse this command to deploy to your own site, edit the deployLoc variable.
  • If you do not have bower installed, run npm install -g bower
  • Run npm install to install dependencies
  • Run grunt watch from the same command prompt.
  • In a new command window run grunt bower:install to get the libraries the web client depends on (jquery, angular, bootstrap, etc.). You should see the watcher window detect the dependent libraries and run the 'vendor' grunt task
  • Disable any LESS compilers you might be using as visual studio extensions. Grunt watch will do everything for you.

Once you have completed the above you are set to make your own modifications to the code and your LESS and JS will be compiled/uglified. You can view the webclient by right-clicking webclient\default.aspx > view in browser.

To make changes to the HTML5 SDK, simply compile the html5sdk project (named wwtlib) while the grunt watch thread is active. Grunt will take the js output and create the wwtsdk.js file. To use this file instead of the production file, add ?debug=local to the query string.

Web client dependencies - further reading

AngularJS

If you are not familiar with Angular JS, I recommend taking some time to learn angularjs as this is a very heavy angular app.

Bootstrap

We also use the bootstrap library and compile our own less with the bootstrap less lib. We use their dropdowns, popovers, and modals quite a bit.

Angular-strap

We use the angular-strap directives library to integrate bootstrap components into angular.

ScriptSharp

We use ScriptSharp to compile the c# classes into javascript. We recently upgraded to ScriptSharp v0.8