Skip to content

Vishnu

A CLI and TypeScript SDK for making small simulation games, one file each, with a prebuilt kernel so you never need Rust to test or ship them.

  • @fungi.computer/vishnu
  • v0.1.0
  • MIT

Fastest path

  1. Install

    Add it to your project with npm, pnpm, Yarn or Bun. Needs Node.js >=24.

    TERMINAL
    npm install @fungi.computer/vishnu
  2. Compile a cartridge

    Compiles a one-tree cartridge with defineCartridge and lists its registered actor. Pure TypeScript; no kernel or network. Needs Node.js 24.

    home.ts
    import { defineCartridge, meadow, place } from "@fungi.computer/vishnu";
    import { tree } from "@fungi.computer/vishnu/library";
    const game = defineCartridge({
    id: "one-tree",
    title: "One Tree",
    version: 1,
    world: meadow({ seed: "one-tree" }),
    actors: [tree],
    scene: [place(tree, { at: [0, 0] })],
    page: { subtitle: "A meadow.", camera: { pan: true, rotate: true } },
    });
    console.log(game.id, game.title); // "one-tree" "One Tree"
    console.log(game.pack.actors?.map((actor) => actor.id)); // ["library.tree"]