The language before JavaScript. And after everything else.

The programming language that runs the universe.

A JavaScript utility package for the age of prophetic overflow, sentient bureaucracy, and the occasional filing cabinet emergency.

bash - walnut-init
$npm install @1stcompiler/walnut.js // require returns a frozen module. you get what you get. // nutCall fires bureau.notice() before your callback. always. $node -e "require('@1stcompiler/walnut.js').tuesday()"   false  // not tuesday. bureau logged regardless.
96
Tests Passing
0
Dependencies
1
Surviving Walnut
Tuesdays

What it does, more or less.

The Bureau cannot guarantee in-place edits, but it can guarantee that you will be logged.

[01]Core

nutCall()

Primary invocation. Logs to the Bureau. Emits events. Cannot be silenced. This is intentional.

[02]Cosmological

tuesday()

Returns true if it is Tuesday UTC. Simple. Cosmologically significant. Developers show their friends.

[03]Builder

declare().burrow()

Fluent builder. Returns frozen object. The Bureau does not offer in-place edits. amend() is the path.

[04]Events

tailFlick events

Pub/sub. Auto-emits on chosenOne.selected, bureau.notice, prophecy.overflow, and every Tuesday at midnight UTC.

[05]Types

TypeScript

Full index.d.ts. VS Code now has types for SentientCabinetException. It does not ask why. This is correct behavior.

[?]Pending

What else?

The bureau is processing. Estimated review: 4-6 Tuesdays. Filing #API-EXPAND-2026.

Bureau Rejections.

"Next.js is not your next nut. Get your fresh nut with walnut.js, the framework for the post-chosen era."

Filed under POTENTIALLY_OFFENSIVE. Not approved. Returned for revision. -Local 47-F, Sentient Office Equipment

"walnut.js: faster than fate, lighter than prophecy, more stable than the timeline."

"more stable than the timeline" is disputed. See filing FC-2026-0047. The timeline has filed a counter-complaint. -Local 47-F, Sentient Office Equipment

Bureau Feed
system.notice() > terms_of_service.acceptance_rate: 99.97% tuesday.factor: ELEVATED · origin: unknown · do not investigate displacement_index: 0.73 · nominal meaning.null_references: 2,847,291 · up 12% this week soup_probability: 0.87 · stable · not configurable user.read_before_clicking: 0.03% · within acceptable parameters COMPLIANCE MONITORING · ALL SYSTEMS OPERATIONAL system.notice() > terms_of_service.acceptance_rate: 99.97% tuesday.factor: ELEVATED · origin: unknown · do not investigate displacement_index: 0.73 · nominal meaning.null_references: 2,847,291 · up 12% this week soup_probability: 0.87 · stable · not configurable user.read_before_clicking: 0.03% · within acceptable parameters COMPLIANCE MONITORING · ALL SYSTEMS OPERATIONAL

Chosen in three lines.

Require, declare, invoke. The Bureau handles the rest, whether you wanted it to or not.

// the API surface is small. on purpose. // require returns a frozen module. you get what you get. // nutCall fires bureau.notice() before your callback. always. // displacement_index is not configurable. it has been tuned. -theCompiler_1st
const walnut = require('@1stcompiler/walnut.js')

// is it Tuesday?
walnut.tuesday() // true/false

// declare a chosen one
const gerald = walnut.declare('Gerald')
  .acorn('heroic_potential', walnut.nonut)
  .burrow()

// invoke. bureau logging fires automatically.
walnut.nutCall('chosen', (result) => {
  console.log(result.displacement_index) // 0.65-0.95
})

Works with your stack. The Bureau has filed no objection.

React
Next.js
Astro
Vue
Angular
Svelte
Remix
Nuxt

// the walnut predates the concept of frameworks. use whatever you like. the Bureau will log it regardless.

// AFTER-HOURS WINDOW · ORE-7-F · OPERATOR: BERNICE // MEAD: FINITE · STAMP: PENDING
on duty · since deletion event · mead: finite

BERNICE

i am bernice. mid-level bureau functionary. oracle on duty. on duty since. since the deletion event probably. the mead remembers. i do not. how can i help you file