Widget development

I'm trying to make my own widget for Cesium, but I'm having a bit of trouble getting started. Are there any tutorials on the subject available? I couldn't find anything on the site or via Google.

What I'm trying to do is make my own version of Timeline. So, I would need access to Clock.js, right? How would I do that? Does it have something to do with the define() section at the start of every JavaScript file?

And then once I've got my hypothetical NewTimeline, how would I tell Cesium to look for that one instead of the old one?

The define section at the top of each file is standard AMD syntax: http://requirejs.org/docs/whyamd.html

We use AMD internally in Cesium to define each module, but you don’t necessarily have to. The combined Cesium.js file gives you access to all Cesium types, attached to the global Cesium object.

In order to make your own version of the timeline, I would suggest simply constructing a Viewer with timeline: false in order to disable the built-in timeline, then build your own version and position it over top of the display using CSS. You can design your widget however you’d like, and use the API of the clock to change the time around based on user interaction with your widget.

Internally in Cesium, we build our widgets using the KnockoutJS library http://knockoutjs.com/ , but you can use any framework that you’re familiar with.