Skip to content

Repository files navigation

tinyjs examples

Example apps for tinyjs — tiny (~6 MB) macOS, Windows, and Linux desktop apps built from a txiki.js backend and a native web view (WebKit on macOS, WebView2 on Windows, WebKitGTK on Linux).

Getting started

  1. Head to tinyjs.app and install the tinyjs CLI.

  2. Clone this repo.

  3. Pick an example, cd into it, and run it:

    cd kitchen-sink
    tinyjs dev      # run with hot reload
    tinyjs build    # dist/<Name>.app on macOS, dist\<name>.exe on Windows

Each example is a self-contained project with its own tinyjs.json, src/main.js (backend), and src/frontend/ (the page).

No toolchain? Every example has prebuilt downloads below — a signed & notarized .dmg for macOS, a zip for Windows 10/11, and a tar.gz for Linux (x86_64 + arm64) — and check the sizes: real native apps at 4–6 MB each. Mac: open the dmg, drag to Applications. Windows: unzip anywhere and run the exe. Linux: untar and run the launcher (needs libwebkit2gtk-4.1-0). Or grab shelf and one-click-install the rest from inside it. The full story on each app lives in its own README.

Examples

An app store for this repo

shelf icon

shelf screenshot

Every example below on wooden shelves (pine by day, walnut by night) — daily drivers, UX experiments, toys, and API showcases — with one-click install, update, and uninstall. The catalog updates itself from this repo, and the Installed tab is your fleet as icons on a shelf.

⬇ Download: macOS shelf-0.2.8.dmg (4.4 MB, signed & notarized) · Windows shelf-0.2.8-win.zip (4.0 MB) · Linux shelf-0.2.8-linux (x86_64) / (arm64) (5.4 MB)

Tiny Deck — the whole tinyjs API on one deck

kitchen-sink icon

kitchen-sink screenshot

Thirteen tabs of live demos: shell, files, HTTP, GPU, WASM, FFI, windows, tray, hotkeys, share sheets, screenshots, battery, clipboard, Spotlight, and more.

⬇ Download: macOS kitchen-sink-0.17.0.dmg (5.6 MB, signed & notarized) · Windows kitchen-sink-0.17.0-win.zip (4.9 MB) · Linux kitchen-sink-0.17.0-linux (x86_64) / (arm64) (6.3 MB)

A Slack-style chat clone

tinyslaq icon

tinyslaq screenshot

Workspaces, channels, and DMs in SQLite — with canned auto-replies and desktop notifications from the channel you're not looking at.

⬇ Download: macOS tinyslaq-0.1.6.dmg (4.4 MB, signed & notarized) · Windows tinyslaq-0.1.7-win.zip (3.8 MB) · Linux tinyslaq-0.1.7-linux (x86_64) / (arm64) (4.9 MB)

Keep your Mac awake, from the menu bar

matcha icon

matcha screenshot

Left-click the cup to toggle caffeinate, right-click for timed sessions. The canonical tinyjs tray-app recipe.

⬇ Download: macOS matcha-0.1.7.dmg (4.3 MB, signed & notarized) · Windows matcha-0.1.8-win.zip (3.7 MB) · Linux matcha-0.1.8-linux (x86_64) / (arm64) (4.8 MB)

A silly, tomato-shaped Pomodoro timer

tomato icon

tomato screenshot

A googly-eyed tomato floats on your desktop (transparent, frameless) while the countdown ticks in the menu bar.

⬇ Download: macOS tomato-0.1.5.dmg (4.3 MB, signed & notarized) · Windows tomato-0.1.6-win.zip (3.7 MB) · Linux tomato-0.1.6-linux (x86_64) / (arm64) (4.7 MB)

A menu-bar world clock

worldclock icon

worldclock screenshot

Your home city lives in the menu bar as an emoji — "🌉 4:45p" — with optional cycling through the rest; click for a frosted popover dropping right from the tray icon, with every city, day offsets, day/night dots, add-your-own cities (emoji included), and an open-at-login toggle.

⬇ Download: macOS worldclock-0.3.4.dmg (4.4 MB, signed & notarized) · Windows worldclock-0.3.5-win.zip (3.8 MB) · Linux worldclock-0.3.5-linux (x86_64) / (arm64) (4.9 MB)

A log-tailing HUD

lumber icon

lumber screenshot

Drop a log file and a translucent always-on-top panel live-follows the tail — filters, error colorizing, tail -f smarts.

⬇ Download: macOS lumber-0.1.5.dmg (4.4 MB, signed & notarized) · Windows lumber-0.1.6-win.zip (3.8 MB) · Linux lumber-0.1.6-linux (x86_64) / (arm64) (4.9 MB)

A shy little desktop ghost

boo icon

boo screenshot

It wanders your screen and flees your cursor. Offer cookies, earn its trust, and it follows you around like a puppy.

⬇ Download: macOS boo-0.1.7.dmg (4.0 MB, signed & notarized) · Windows boo-0.1.7-win.zip (3.5 MB) · Linux boo-0.1.6-linux (x86_64) / (arm64) (4.5 MB)

Two ravens loose on your desktop

kraa icon

kraa screenshot

They strut, peck, caw at each other, and fly off when you get too close. Scatter seed (⌃⌥S) and win them over.

⬇ Download: macOS kraa-0.1.8.dmg (4.3 MB, signed & notarized) · Windows kraa-0.1.8-win.zip (3.7 MB) · Linux kraa-0.1.6-linux (x86_64) / (arm64) (4.8 MB)

kraa's ravens, reincarnated as skinned 3D crows

kraa3d icon

kraa3d screenshot

The same two birds as rigged, animated 3D models on transparent windows — they walk, flap, glide, and kraa in stereo.

⬇ Download: macOS kraa3d-0.2.7.dmg (4.8 MB, signed & notarized) · Windows kraa3d-0.2.7-win.zip (4.2 MB) · Linux kraa3d-0.2.5-linux (x86_64) / (arm64) (5.2 MB)

A flock of 3D pigeons loose on your desktop

coo3d icon

coo3d screenshot

Two to twenty pigeons that strut, mob crumbs, loaf on screen edges, and poop. Very occasionally one hatches gold.

⬇ Download: macOS coo3d-0.2.7.dmg (5.2 MB, signed & notarized) · Windows coo3d-0.2.7-win.zip (4.6 MB) · Linux coo3d-0.2.5-linux (x86_64) / (arm64) (5.5 MB)

Magik Treez™ — car air fresheners for your desktop

treez icon

treez screenshot

A family of them sways on strings from the top of your screen. Drag them around — pull down too far and the string snaps.

⬇ Download: macOS treez-0.1.7.dmg (4.0 MB, signed & notarized) · Windows treez-0.1.7-win.zip (3.4 MB) · Linux treez-0.1.6-linux (x86_64) / (arm64) (4.3 MB)

A tiny Markdown editor — one window per document

nib icon

nib screenshot

Syntax-coloured source and highlighted code blocks, two panes that mirror each other's cursor and selection to the character, an editable preview that writes Markdown back as you type, heading outline, ::: note callouts and ::: tabs that can switch in lockstep, a project file tree with Open Quickly, @-mentions and a rename that offers to re-aim the links pointing at the old name, image paste with a destination, a heading-derived filename and canvas re-encoding, ⌥-click to follow a link from either pane, captions and click-to-zoom, emoji picker, themed PDF and HTML export, lossless closing. Double-click any .md in Finder, drop a folder on the Dock icon, or run nib . from a terminal — argv, LaunchServices and drag-drop all land in one onOpenFiles. Actions run your own commands, scripts and AI prompts on the folder you're in — per-platform if they need to be, with keyboard shortcuts and scripts that can ask questions mid-run — and there's dictation, plus ::: carousel, ::: download, ::: pagelink and ::: embed blocks in the preview.

⬇ Download: macOS nib-0.3.0.dmg (5.7 MB, signed & notarized) · Windows nib-0.3.0-win.zip (4.8 MB) · Linux nib-0.2.0-linux (x86_64) / (arm64) (6.1 MB)

Clipboard history in the menu bar

pasta icon

pasta screenshot

Text, images, files, and colors — ⌘⇧V summons the palette, ⏎ pastes a clip back as whatever it was.

⬇ Download: macOS pasta-0.5.6.dmg (4.4 MB, signed & notarized) · Windows pasta-0.5.7-win.zip (3.7 MB) · Linux pasta-0.5.7-linux (x86_64) / (arm64) (4.9 MB)

Drop a file, ✨ it's converted

presto icon

presto screenshot

Images and video convert on drop (window or Dock icon), with a live progress bar and outputs next to the source.

⬇ Download: macOS presto-0.1.6.dmg (4.1 MB, signed & notarized) · Windows presto-0.1.7-win.zip (3.5 MB) · Linux presto-0.1.7-linux (x86_64) / (arm64) (4.6 MB)

A photo booth

cheese icon

cheese screenshot

Countdown snaps with baked-in filters, video clips with a live mic meter — every shot a real file that drags out of the app.

⬇ Download: macOS cheese-0.1.6.dmg (4.0 MB, signed & notarized) · Windows cheese-0.1.7-win.zip (3.6 MB) · Linux cheese-0.1.7-linux (x86_64) / (arm64) (4.7 MB)

Your workday on a scrub bar

deja icon

deja screenshot

A screenshot every 30 seconds, all day, played back like a flipbook — scrubber, day sidebar, drag any frame out.

⬇ Download: macOS deja-0.1.6.dmg (3.8 MB, signed & notarized) · Windows deja-0.1.7-win.zip (3.4 MB) · Linux deja-0.1.7-linux (x86_64) / (arm64) (4.5 MB)

A secret keeper behind Touch ID

hush icon

hush screenshot

Secrets live in the real macOS Keychain; every reveal and copy goes through the Touch ID sheet. Copies self-wipe in 30 s.

⬇ Download: macOS hush-0.1.6.dmg (4.0 MB, signed & notarized) · Windows hush-0.1.7-win.zip (3.5 MB) · Linux hush-0.1.7-linux (x86_64) / (arm64) (4.6 MB)

A process & open-port inspector

procsy icon

procsy screenshot

Live ps and lsof tables with sorting, filtering, and kill buttons — built in React 19 + Radix + TypeScript.

⬇ Download: macOS procsy-0.1.6.dmg (4.5 MB, signed & notarized) · Windows procsy-0.1.7-win.zip (3.8 MB) · Linux procsy-0.1.7-linux (x86_64) / (arm64) (4.9 MB)

A little SQLite browser

sqlittle icon

sqlittle screenshot

Double-click a .db in Finder and browse it — tables, lazy pagination, a ⌘↩ query box. Vue 3 + PrimeVue.

⬇ Download: macOS sqlittle-0.1.6.dmg (4.8 MB, signed & notarized) · Windows sqlittle-0.1.7-win.zip (4.1 MB) · Linux sqlittle-0.1.7-linux (x86_64) / (arm64) (5.2 MB)

A tiny Trello, all local

trolley icon

trolley screenshot

Boards, drag-and-drop cards, due dates in the menu bar, a ⌃⌥T quick-add palette — plus the documented auto-update recipe.

⬇ Download: macOS trolley-0.1.6.dmg (4.4 MB, signed & notarized) · Windows trolley-0.1.7-win.zip (3.8 MB) · Linux trolley-0.1.7-linux (x86_64) / (arm64) (4.9 MB)

A Raycast-lite launcher

beam icon

beam screenshot

⌥Space anywhere: fuzzy-launch apps (real icons), find files through Spotlight, or type math and copy the answer.

⬇ Download: macOS beam-0.1.6.dmg (4.2 MB, signed & notarized) · Windows beam-0.1.7-win.zip (3.6 MB) · Linux beam-0.1.7-linux (x86_64) / (arm64) (4.7 MB)

A Winamp for the desktop — four real windows

amp icon

amp screenshot

Player, playlist, 10-band EQ with AutoEq headphone correction, a full podcast deck (shelf, offline downloads, resume, show notes), and five visualizer engines — real Milkdrop, Geiss HDR, and three homegrown WebGPU + HDR pieces: Magnetosphere, a fish-stirred liquid Lagoon and a starling Murmuration — plus visualizer plugins in a no-DOM worker sandbox, which can ask amp for three.js, p5 or q5. Each pane a native window that snaps, docks, and windowshades. BIG swaps it all for a fullscreen 80s hi-fi stack: VU needles, LED spectrum, giant thumping speakers, a zoomable world-radio globe with real country borders, and podcast covers leaning against the gear like LP sleeves — in brushed silver when your Mac runs light. Embedded tags name every track (Artist — Title, not the filename); files that carry none can have their cover and tags found online (Cover Art Archive → iTunes → Deezer, opt-in and cached); and stations that send ICY metadata say what's actually on the air, read straight off the interleaved stream.

⬇ Download: macOS amp-0.13.0.dmg (8.2 MB, signed & notarized) · Windows amp-0.13.0-win.zip (7.4 MB) · Linux amp-0.13.0-linux (x86_64) / (arm64) (8.7 MB)

A record player, not a music player

platter icon

platter screenshot

Your music folder becomes a crate of LPs, and the only way to hear one is the ritual: pull the sleeve, slide the record onto a three.js turntable, start the motor, and set the tonearm down by hand — the pitch bends up as the platter comes to speed. No skip button, no queue. Landing between tracks takes a steady hand (an amber ring previews the drop, and the stylus leans toward track starts), sides run out into a crackling lead-out groove, and flipping to side two means pulling the record out toward you and turning it over — motor stopped first. Single-file album rips are albums too: a .cue sheet beside the FLAC (or a CUESHEET block inside it) becomes a real tracklist, grooves and all, played gapless because the needle only seeks. Pull up on the crate's lip and one row of wood opens into the whole wall of sleeves. Missing sleeves get found online (Cover Art Archive fronts and backs — click the sleeve to turn it over), and every sleeve turns over whether or not a back scan exists: with none, platter prints one, the cover thrown out of focus for card stock with the tracklist set over it in sides and times. The room does time-of-day lighting with a lamp, curtains, and a regrettable disco switch (real mirrorball, gobo light), and Spotify Connect puts your saved albums in the crate: platter is the turntable, Spotify is the amplifier. Dress the deck in the shop — painted or wood bases, colored felt or acrylic platters, or a full SL-1200 homage. 45 rpm switch included for chipmunk emergencies.

⬇ Download: macOS platter-0.4.0.dmg (6.0 MB, signed & notarized) · Windows platter-0.4.0-win.zip (4.9 MB) · Linux platter-0.4.0-linux (x86_64) / (arm64) (6.5 MB)

A 2003 iPod, floating on your desktop

podd icon

podd screenshot

The third-generation iPod as a 3D always-on-top widget — touch wheel with a clicker, the four glowing touch buttons, MENU to climb back out, and the whole 2003 menu tree on a chunky monochrome LCD that backlights cold blue when you touch it. Browse Artists/Albums/Songs from your music folder (it borrows platter's), land in Now Playing with the wheel as volume and the centre button as scrub. Grab the body to drag it around; the mouse scroll wheel spins the touch wheel.

⬇ Download: macOS podd-0.2.4.dmg (5.0 MB, signed & notarized) · Windows podd-0.2.5-win.zip (4.3 MB) · Linux podd-0.2.5-linux (x86_64) / (arm64) (5.3 MB)

A menu-bar time tracker — a local homage to Harvest

till icon

till screenshot

The running timer lives in the menu bar; the popover drops from it, tears off into a real window, and snaps back home.

⬇ Download: macOS till-0.1.8.dmg (3.7 MB, signed & notarized) · Windows till-0.1.8-win.zip (3.3 MB) · Linux till-0.1.7-linux (x86_64) / (arm64) (4.2 MB)

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages