Skip to content

CSS watch faces and analog clocks built with Orbit

A working analog clock face is one of the toughest CSS-only challenges out there. You need an outer ring, sixty tick marks, twelve hour markers, two or three rotating hands, and ideally one or more sub-dials — and they all have to share a single center and rotate independently. With most CSS approaches, you’d reach for SVG and pile on the JavaScript. With Orbit, every part of a watch face is a regular DOM element on a nested orbit, and the rotation math is handled by the framework.

These four examples cover the styles you’ll most often need to build, from a stripped-down analog clock to a feature-loaded smartwatch face.

Examples

Which one should I pick?

Looking for…Pick
A starting point for a clockMinimalist analog
A racing/sport chronograph lookChronograph
Dressy or formal stylingRoman numeral
A live working watch face with date and alarmSmartwatch

All four use the same underlying primitives — bigbang, gravity-spot, nested orbits, vector for tick marks and hands, satellite for hour labels. Once you’ve built one, the others are stylistic variations on the same skeleton.