Releases: justrach/merjs
v0.2.5
merjs v0.2.5
Release page: https://merlionjs.com/v0.2.5
Highlights
- release dashboard and benchmark storytelling for v0.2.5
- improved mercss design-system primitives: badges, surface cards, metric tiles, graph fills
- worker-safe
merAPI surface for wasm32-freestanding builds - fixed rapid restart bind issue with
reuse_address = true(PR #93) - fixed worker deploy wiring and Zig 0.16 WASM grep compatibility
- mercss JIT codegen pipeline writes
_mercss.cssand injects it through layout
Runtime numbers
- 115,093 req/s homepage throughput
- 0.39 ms average latency
- 4.8 MB RAM under CI load
- 260 KB release binary
Release assets
- macOS binaries are Developer ID signed and Apple notarized using the
codedb-notarykeychain profile - Linux binaries are attached for x86_64 and aarch64
- Windows binaries are attached for x86_64 and aarch64
- hosted installer tested successfully from
https://merjs.trilok.ai/install.sh - installer release asset matches the hosted installer logic
Credits
- includes Ivan Leo's socket reuse fix from PR #93: #93
- thanks @ivanleomk
v0.2.2
What's Changed
Full Changelog: v0.2.1...v0.2.2
v0.2.1
v0.2.0
Full Changelog: v0.1.1...v0.2.0
v0.1.1
What's new
Bug fix: wasm/ missing from package paths
wasm/counter_config.zig was not included in the published package because wasm/ was not listed in .paths in build.zig.zon. Consumers using merjs as a Zig dependency had to manually patch the cached package to build. Fixed.
New: wavetable synthesizer demo
wasm/synth.zig— 150-line Zig DSP engine: sine/square/saw/tri wavetables, 8-voice polyphony, ADSR envelope, one-pole lowpass filter, zero heap allocations, compiled to 6.8KB wasm32app/synth.zig— full dark-theme synth UI with AudioWorklet integration, oscilloscope canvas, piano keyboard (C3–B4), ADSR + filter sliders- Live at merlionjs.com/synth
CSP update
Added wasm-unsafe-eval and blob: to script-src in both the dev server and Cloudflare Workers handler, required for AudioWorklet + WebAssembly.Module support.
v0.1.0
What's Changed
- feat: JSX-like HTML builder + migrate index.zig by @justrach in #8
- feat: migrate counter.zig to HTML builder DSL + Meta SEO by @justrach in #13
- feat: Dhi-style comptime counter config with bounds validation by @justrach in #14
- feat: enforce Meta SEO on all pages + migrate dashboard/users/weather to layout by @justrach in #19
- feat: auth integration (cookies, SSR fetch, env, login/connected pages) by @justrach in #22
- feat: signed session cookies (HMAC-SHA256, issue #24) by @justrach in #31
- feat: dynamic route segments [slug] (issue #25) by @justrach in #32
- feat: mer CLI, versioning, binary optimization, pre-commit hooks by @justrach in #35
New Contributors
Full Changelog: https://github.com/justrach/merjs/commits/v0.1.0
v0.1.0-rc.1
merjs v0.1.0 — Release Candidate 1
Downloads
| Platform | Binary | Size |
|---|---|---|
| macOS Apple Silicon | mer-macos-aarch64 |
131 KB |
| macOS Intel | mer-macos-x86_64 |
90 KB |
| Linux x86_64 | mer-linux-x86_64 |
69 KB |
| Linux ARM64 | mer-linux-aarch64 |
66 KB |
Install
# macOS (Apple Silicon)
curl -L https://github.com/justrach/merjs/releases/download/v0.1.0-rc.1/mer-macos-aarch64 -o mer
chmod +x mer
sudo mv mer /usr/local/bin/
# Then:
mer init my-app
cd my-app
mer devVerify download
shasum -a 256 mer-*
# Compare with checksums.txtWhat's new
merCLI — scaffold, dev, and build merjs projectsmer init <name>— scaffold a new project from starter templatemer dev— codegen + dev server in one commandmer build— production build (ReleaseSmall + prerender)mer --version— print version
- Binary size: 1.9MB → 260KB (main server), 66-131KB (CLI) via release stripping
- LCP improvements: Content-Length headers, image preloading, fetchpriority
- Pre-commit hooks:
zig fmt --check+zig buildon commit, tests on push - Versioning: CHANGELOG.md,
mer.versionconstant
Note on macOS Gatekeeper
If macOS blocks the binary, run:
xattr -d com.apple.quarantine merFull changelog: https://github.com/justrach/merjs/blob/feat/cli-versioning-perf/CHANGELOG.md