-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Google Summer of Code Ideas 2015
Cesium is an open-source JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. It uses HTML5 and WebGL for hardware-accelerated graphics. Our code has shipped to 10's of millions of people in the same day and is used all around the world in fields as diverse as GIS, aerospace, real estate, sports, and entertainment. The Cesium community is growing rapidly; check out the activity on the forum and @CesiumJS.
We have a culture of writing clean, peer-reviewed, tested code. Our developers are experts in their fields; they write books, create open standards, and present at international conferences. We look forward to helping you grow your skills and ship beautiful code that has wide impact.
When we look at student applications, we look for students who love to dive deep into a problem, research it carefully, experiment with potential solutions, and then code, test, and document the best implementation. We like to see passionate, craftsmanship, and conscientiousness.
To get your GSoC application noticed, take an afternoon or a weekend and write a small demo using Cesium, post it to GitHub, and then include a link in your application. Get up to speed by reading the Cesium tutorials, then get inspired by the code examples and demos.
If instead of writing a demo, you would rather make a contribution to Cesium itself to help your GSoC application stand out, see the Cesium Contributor's Guide and list of beginner issues. Pick something that interests you, comment on the issue to get advice, then send us a pull request when it is ready. Note that we can't merge a pull request until you submit a signed Contributor License Agreement.
If you need help, post a question to the Google Summer of Code 2015 thread on the Cesium forum. The core developers are active on the forum and will be happy to respond.
Technologies and Tools We Use
JavaScript, HTML, CSS, WebGL, GitHub, Eclipse, Chrome, Firefox, Android, iOS
(We don't expect you to know all of them).
TODO: Drone tutorials?
## Cesium demos pack
TODO: NASA Worldview
- Vector graphics - combine Raphael and Cesium to demonstrate adding SVG charts and graphs to Cesium.
- Geospatial analysis - demonstrate Cesium as a visualization platform for geospatial analysis (e.g., point in polygon, Triangulated Irregular Networks, etc.) using Turf either on the client or on the server using Node.js.
- Three.js - demonstrate how Cesium can be combined with the Three.js WebGL library perhaps by syncing camera views between a Cesium and Three.js canvases, overlaying a translucent Three.js canvas over Cesium, or embedding Three.js in Cesium's render loop.
- AngularJS - show how Cesium can be used with AngularJS.
- Like toying with hardware? Perhaps write some JavaScript that runs Node.js on the Tessel microcontroller to feed data from some of its add-on modules (camera, climate, GPS, etc.) to Cesium for visualization.
- Data visualization - Combine D3 with Cesium for temporal geospatial data visualization like this demo.
References
- Cesium tutorials
- TODO: more
Skills: JavaScript, HTML, CSS, UI/UX, git, Node.js, various front-end and back-end libraries
Level: Beginner / Intermediate
Mentor: Patrick Cozzi: @pjcozzi, [email protected]
Backup Mentor: Matt Amato: @matt_amato, [email protected]
## Suggest your own idea
We're excited to hear your ideas for projects that would benefit the Cesium community. Perhaps your interested in WebGL and JavaScript optimization, and want to improve the core engine? Perhaps you are passionate about geospatial data formats and want to write new loaders for Cesium? Or perhaps you are excited about WebVR and want to create the ultimate virtual reality app with Cesium?
Whatever it is, we want to hear about it! Pitch your idea and find a mentor by posting a short description to the Google Summer of Code 2015 thread on the Cesium forum.
Tip: the best way to get a potential mentor's attention is to code a quick prototype (start here), post it on GitHub, and include a link when you post to the Google Summer of Code 2015 thread.
References
- To get inspired, check out the Cesium tutorials, code examples, demos, roadmap, and beginner issues.
Skills: Depends on the project
Level: Beginner to Advanced
Mentor: Find one on the Cesium forum by posting to the Google Summer of Code 2015 thread
Backup Mentor: See above