Astra
Two release trains, zero new features — Astra has been in pure maintenance mode since spring.
A side-by-side editorial comparison of Aseprite and OpenImageIO — release velocity, themes, recent moves, and the top alternatives to consider.
Steady 1.3 maintenance, with the Lua API quietly becoming Aseprite's extension point.
Aseprite is deep into a long 1.3.x maintenance line: v1.3.18 landed in July after three betas stretching back to February, followed within the hour by a 1.3.18.1 crash-fix patch and, two weeks later, a one-line 1.3.18.2. The substantive work in 1.3.18 splits three ways — performance (undo/redo now keeps doc::Objects in memory), discoverability (Preferences search, configurable tooltip delay, clearer layer groups in the timeline), and Lua API growth (custom file formats for load and save, eyedropper in app.useTool). By volume, bug fixes dominate: tilemap selection, zoom distortion, crash paths.
Every image reader is now assumed hostile, and the fuzzer proves it monthly
OpenImageIO ships on a monthly rhythm, releasing the current 3.1 line and the explicitly obsolete 3.0 line in tandem within minutes of each other. The dominant work is defensive: guarding pnm, jpeg-xl, dicom, cineon, dpx, fits and iff readers against corrupt or hostile files, with a CVE fixed in cineon bit-depth validation and a new limits:resolution attribute capping per-dimension image size against decompression bombs. libFuzzer-based fuzzing infrastructure for format readers landed in August.
Aseprite is deep into a long 1.3.x maintenance line: v1.3.18 landed in July after three betas stretching back to February, followed within the hour by a 1.3.18.1 crash-fix patch and, two weeks later, a one-line 1.3.18.2. The substantive work in 1.3.18 splits three ways — performance (undo/redo now keeps doc::Objects in memory), discoverability (Preferences search, configurable tooltip delay, clearer layer groups in the timeline), and Lua API growth (custom file formats for load and save, eyedropper in app.useTool). By volume, bug fixes dominate: tilemap selection, zoom distortion, crash paths.
The cadence is beta → final → patch, with identical fixes backported across the 1.3.17.x and 1.3.18.x branches — several entries here are branch twins carrying the same two or three fixes. The one directional thread is extensibility: the Lua API version moved 39 → 40 and now lets third-party code register sprite load/save formats the core used to own exclusively. Separately, "refactors needed for new layer types" appears across two releases as internal groundwork with no user-visible effect yet.
Expect the 1.3.18.x patch train to keep absorbing crash reports at this pace, with the next feature release cashing in the new-layer-type refactors that have been landing quietly.
OpenImageIO ships on a monthly rhythm, releasing the current 3.1 line and the explicitly obsolete 3.0 line in tandem within minutes of each other. The dominant work is defensive: guarding pnm, jpeg-xl, dicom, cineon, dpx, fits and iff readers against corrupt or hostile files, with a CVE fixed in cineon bit-depth validation and a new limits:resolution attribute capping per-dimension image size against decompression bombs. libFuzzer-based fuzzing infrastructure for format readers landed in August.
The project is institutionalizing the hardening rather than reacting to individual reports — building fuzzing into the repo, clarifying what qualifies as a vulnerability in its security policy, and adding a global attribute that lets applications set their own limits. Alongside that, oiiotool keeps gaining ergonomics, and genuinely new capability is being gated behind an explicit --experimental flag: the FLIP perceptual difference metric and a standalone GPU texture system prototype that deliberately does not touch the core library.
With 3.2 stated as roughly two months out and 3.0 support ending shortly after, expect the next releases to focus on that transition while the fuzzing infrastructure keeps producing reader fixes.
Other Design products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either Aseprite or OpenImageIO.
Two release trains, zero new features — Astra has been in pure maintenance mode since spring.
A component library turning into scaffolding for AI apps
The editor now prints to a CVS counter, and that is the second business bolted on this summer.
Webflow is building for the answer engines, not just the search results page.
The 10.6 alphas are an Angular tooling rebuild wearing a version number.
Half-precision grids and a NanoVDB that finally handles changing topology
See all Aseprite alternatives → · See all OpenImageIO alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. Aseprite and OpenImageIO are shipping at a similar cadence (velocity 5.0 vs 5.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. Aseprite and OpenImageIO are shipping at a similar cadence (velocity 5.0 vs 5.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Design products to evaluate alongside.
Top Aseprite alternatives in Design are ranked by recent ship velocity. Browse the "Aseprite alternatives" section above for the current picks, or visit /alternatives/aseprite for the full list with editorial commentary on each.
Top OpenImageIO alternatives in Design are ranked by recent ship velocity. Browse the "OpenImageIO alternatives" section above for the current picks, or visit /alternatives/openimageio for the full list with editorial commentary on each.