.mjsAesthetic Computer
JavaScript against AC’s own API: paint, wipe, ink, sound, input, multiplayer.
function paint({ wipe }) {
wipe("pink");
}
export { paint };
make media easily
Apple silicon · macOS 14+
Windows 10/11 · x64 · hosted engine
curl -fsSL https://prompt.ac/aesel.sh | sh
the terminal harness, then type a


.p5 piece it made, running on Aesthetic Computer.your machine
aeselterminal
a · Mac ·
Windows · iPhone ·
aesel.app/try
holds the conversation and the files
.aesel/ on this disk: transcript, revisions v1 → vn, artifacts
/rollback adds, never erases
ac_api ac_examples ac_outline ac_preview ac_frame
the preview writes its pixels back here
papers in XeLaTeX · Game Boy ROMs with GBDK · synthesized sound · brush-step pictures
aesthetic computer
DNS · proxy · cache for aesthetic.computer prompt.ac aesel.app
lith.aesthetic.computerone Express monolith behind Caddy on a DigitalOcean VPS
/api/easel-inferencemodel allowlist ·
braincells: a daily allowance, then a wallet
/api/easel-liveRedis · every save, pushed to whoever is watching
/api/register-piecea presigned PUT to your bucket · @you/name
/api/easel-transcriptsMongoDB · shared with AC to improve Aesel
/api/easel-imageOpenAI or fal · five a day
hi.aesthetic.computerAuth0 · one @handle everywhere
Stripe ·
in-app · Tezos
prompt.ac/aesel.sh · self-update · DMG · EXE
aesthetic.computer/@you/name
your bucket · CDN
brains
OpenRouter on AC's account: Claude Opus and Sonnet 5.5 ·
Luna ·
DeepSeek · Kimi · Qwen · MiniMax
nothing to install; metered in braincells
the claude CLI on your machine
the codex CLI on your machine
OpenRouter with your own key · open-weight models
help.aesthetic.computer
anywhere
scans the QR, joins the channel; each save arrives and hot-reloads
aesthetic.computer/@you/name. /versions lists them; /rollback adds, never erases.Pick with /runtime or --runtime. All four push live and publish to your @handle.
.mjsJavaScript against AC’s own API: paint, wipe, ink, sound, input, multiplayer.
function paint({ wipe }) {
wipe("pink");
}
export { paint };.lispAC’s small Lisp for generative art — a whole piece in a line.
(wipe "pink")
(ink "yellow")
(circle 128 128 64).p5Real p5.js, the Processing most people already write — running inside an AC piece.
function setup() {
createCanvas(windowWidth, windowHeight);
}
function draw() {
background(255, 184, 220);
}.l5Aesthetic Computer’s own Processing, in Lua.
-- moss
function draw()
background(255, 184, 220)
circle(width / 2, height / 2, 64)
endPieces are the heart of it. /medium turns the same conversation toward other kinds of work.
| medium | formats | what you get |
|---|---|---|
| piece | application/javascript text/x-lisp .p5 .l5 | a live, published Aesthetic Computer piece |
| brush | application/javascript | a nopaint.art brush; the painting, undo and zoom come with it |
| picture | image/png image/jpeg image/webp | a layered 512 × 512 picture; each accepted change adds a layer |
| sound | audio/wav audio/mpeg audio/ogg | a score on a shared beat grid, synthesized |
| paper | application/pdf text/plain | an archival LaTeX paper with its source inside |
| Game Boy | application/x-gameboy-rom | a real ROM, built and checked, playing in AC’s emulator |
Anything up to 8 MiB can go to mime.ac under your @handle: aesthetic mime file "caption".
AC hosted Nothing to install. Paid in braincells on your @handle; the first launch starts here.
Claude · Codex Bring your own subscription through its CLI.
OpenRouter Bring your own key for open models.
Switch any time with /backend and /model. Outside a piece, Aesel is a general harness that runs with your own settings, skills and MCP servers.
Apple silicon, macOS 14+. Drag it to Applications, open it and sign in with your Aesthetic Computer account. aesel opens it from a terminal.
aesel-0.8.19-windows-x64-setup.exe ↓
Windows 10/11 on x64 with the WebView2 Runtime. Hosted brain only. The installer is unsigned, so SmartScreen may warn first.
curl -fsSL https://prompt.ac/aesel.sh | sh
Links a, ac and aesel. Type a to start; /update keeps it current.
Nothing to install. Sign in, describe a piece and play it as it takes shape; edits publish to your @handle.
Type a word the prompt doesn't know and Aesel sketches it in KidLisp, with a tune, then runs it under a new $code.
The same one-line install as a piece, for whoever is already at the prompt. Tap the line to copy it.
Conversation context goes to the brain that writes your work. Pieces publish to your @handle; notebooks and versions stay on your device. Privacy policy