Browser Runtime
Picture windows on Canvas and event handlers that feel native to mIRC scripting.
on *:paint:@clock:{
drawline -r @clock $rgb(77,166,255) 2 50 50 80 20
}
nixrc
Run classic mIRC scripts in browsers and server runtimes, with a working transpiler MVP and modern tooling.
mIRC scripting was ahead of its time. Event-driven, socket-native, with picture windows and a tiny feedback loop that invited experimentation.
I built nixrc to carry that model forward: browser runtime, server runtime, and a transpiler that turns scripts into importable TypeScript modules.
Picture windows on Canvas and event handlers that feel native to mIRC scripting.
on *:paint:@clock:{
drawline -r @clock $rgb(77,166,255) 2 50 50 80 20
}
Compile `.mrc` scripts into typed modules with source maps, watch mode, and optional `.d.ts` output.
nixrc compile regx.mrc --out dist --emit-dts --watch
# dist/regx.ts (+ .map + .d.ts)
Run bots and IRC automations on Bun, Node.js, or Deno without rewriting core script logic.
import { Runtime } from "nixrc/server";
const bot = new Runtime();
bot.load("greet.mrc");
A live editor for mIRC scripts with instant execution and shareable links.
https://nixrc.dev/play/?script=clock.mrc
Analog clock drawing and timer loop.
Run in playgroundAnimation loop and collision bounce.
Run in playgroundRegex extraction and text formatting.
Run in playgroundTimer-based now-playing metadata updates.
Run in playgroundFile-serving style triggers and socket flow.
Run in playgroundmIRC scripting taught me that good tooling is about momentum. You write a few lines, trigger an event, and immediately see behavior. That creative loop still matters.
nixrc keeps that spirit but makes it portable: scripts that run in the browser, in server runtimes, and in modern build pipelines without losing the original model.
nixrc is live. Get notified of major updates, stable releases, and breaking changes. Low volume, no noise.