// the find
shuding/cobe
5KB WebGL globe lib.
cobe is a minimal WebGL globe renderer — drop a canvas in, pass lat/lng markers and arcs, get a spinning 3D globe. It's aimed at developers who want the visual without writing shader code themselves, and the 5KB bundle size means you're not paying a heavy toll for it.
Zero dependencies and 5KB gzipped is the real headline — most 3D libs drag in 200-500KB. The CSS Anchor Positioning integration for marker labels is genuinely clever: the globe exposes CSS custom properties for visibility and anchor position, so label animations are pure CSS transitions with no JS layout math. The spherical Fibonacci mapping for the dot-matrix world texture gives a perceptually uniform distribution without a lookup table. The onRender callback pattern keeps rotation state in user code, which means frame-rate coupling and pause/resume are trivial to implement.
The library is effectively frozen — last meaningful commit is over a year old, open issues and PRs are piling up with no response. CSS Anchor Positioning is still not supported in Firefox (as of early 2026), so the bindable labels feature silently breaks for a non-trivial slice of users with no documented fallback. The API surface is a flat config object with no event system, so detecting marker clicks requires you to roll your own hit testing against the rendered canvas. There are no TypeScript generics or discriminated unions on the config type, so typos in property names fail silently at runtime rather than at compile time.