All projects

Component Libraries

Draupnir

Draupnir expresses schedules as typed objects, validates them at build time, and exposes a pure next-occurrence function that is trivial to unit test across time zones.

LiveSince 2025

The Challenge

Cron strings are unreadable and untestable, and every project re-implemented the same drift and time-zone bugs.

The Solution

A typed schedule object, validated at build time, plus one pure `nextOccurrence()` function. No cron parser, no hidden state, easy to test.

screenshot / demo video

Technologies Used

TypeScript

Schedules are types; invalid rules fail to compile.

Zod

Runtime validation for schedules loaded from config.