Datetime Versioning
Ship dates,
not numbers.
Three schemes for encoding build timestamps into version numbers that actually work on Windows, macOS, and Linux — where X ≤ 255, Y ≤ 255, and Z ≤ 65535.
The constraint
Windows MSI caps Major and Minor at 255. Patch caps at 65535. Any X.Y.Z version outside these bounds will silently break your installer or fail your build. These three schemes encode datetimes within those limits.
The family
Comparison
| Resolution | Range | Legibility | Best for | |
|---|---|---|---|---|
| SunVer | 10 min | 255 yr | Full | Human-facing releases |
| MoonVer | 1 min | 40 yr | Partial | Frequent CI builds |
| BinVer | 1 sec | 136 yr | None | Embedded / infra |
Try it
SunVer
MoonVer
BinVer
Why not SemVer?
SemVer communicates compatibility. These schemes communicate time. They're not competing — they serve different purposes. Use SemVer for libraries where API contracts matter. Use Ver for applications, game builds, firmware, CI artifacts — anything where "when was this built?" is more useful than "is this backwards compatible?".