Picguin is a collection of pure Luau image codecs for a growing range of formats.
It provides a uniform interface for decoding & encoding.
- Type-safe, carefully optimized for speed and memory efficiency
- Lightweight implementations with zero dependencies
- Compatible with Roblox, Lune, and other Luau runtimes
- Structured from the ground up to accommodate new formats
Warning
Picguin is in early development, and the interface across codecs is subject to change.
All packages will remain pre-v1.0.0 until the design is finalized.
View the documentation to get started with Picguin.
Simplified happy-path usage (PNG):
local png = require("@packages/png")
local source: buffer -- png binary data
local parsed = png.decode(source) -- decode headers, metadata, etc
local cel = parsed.cel(0, "rgba8") -- decode frame 0 bitmap, region, duration, etcSee Introduction, Installation for an installation guide.
| Format | pesde Package | .rbxm Releases |
|---|---|---|
| PNG | picguin/png |
Latest (v0.1.1) All Releases |