Toaster hears whatever is playing on your PC (Spotify, YouTube, anything) and writes it out as live Strudel code in front of you: named lines typed into a blank window and lighting up as they play. Around the code: every hit as a domino, your webcam with effects you work with your hands, a dot orb, or a little world. Toaster, as in Toaster Strudel.
Try it in your browser Β· Download for Windows or Mac
It finds the beat, the kick, clap and hats, the bass line, the chords and the key, and keeps rewriting the code as the song moves. It's a live reconstruction for show, not an exact transcription.
- Writes the song as code you can play. A line for each part, typed the way a live coder performs it (what you'll see in the code). It's real Strudel: press O and it opens in strudel.cc, ready to play; press X for the whole song as Strudel code and as a MIDI file.
- Your camera, worked with your hands. C turns it on. Frame something with your fingers and a window opens on it through one of 16 filters; make a circle with your hands and a portal opens, your own skull in X-ray first; βοΈ for the next theme, π to record. K cuts you out over the visuals, or turns you to dots, voxels or glass.
- Visuals that move with the song. V for the background: the sound as a landscape, planets cut on the kick, liquid chrome, a tunnel and more; P for the dominoes or a punchcard; R for a dot orb that changes form every 8 bars; G for a lens of liquid glass.
- Little worlds. The scenery: thirteen scenes, from a lighthouse at sea to space to an eye that dives into its own pupil, every one answering the drop: hit D when it lands. Z hides the code and keeps just the visuals, for a live DJ set.
Windows 10 or 11, or macOS 13 or later. A webcam is optional.
Windows. Download Toaster-<version>-win-x64.zip from the Releases page,
unzip it anywhere and double-click Toaster.exe. The first time, Windows may say "Windows
protected your PC" (the app isn't signed): click More info, then Run anyway. It starts
listening straight away; there's no prompt.
Mac. Download Toaster-<version>-mac-universal.zip from the Releases page
(one app for Intel and Apple silicon), unzip it and drag Toaster into Applications. It isn't
signed by Apple, so the first time the Mac won't open it: open System Settings β Privacy &
Security, scroll down to Toaster and click Open Anyway. It asks to record system audio. Allow
it. That's how Toaster hears what's playing; it doesn't record the screen, and the camera stays off
until you press C.
Play some music: within a few seconds it finds the beat and starts typing. Press ? for the keys.
Updates. When a newer Toaster is out, it offers it a few seconds after it starts. On Windows, say yes and it downloads it, checks it against the checksum GitHub lists for it, closes, and opens again as the new version (your settings stay); on a Mac it opens the release's page. You can turn the check off in the help (?). The first time a new version opens, it shows what's new in it, each with its key, and the help keeps the latest additions at its top.
These are the keys as they come; every one can be changed in the help (?): click a key, press the one you want (a key that's taken swaps over). Esc, ? and F11 stay put.
| Key | Does |
|---|---|
| S | audio source: system audio, demo beat, file, input |
| V | background: spectrum, tunnel, spiral, pitch wheel, warp, cuts, worlds, chrome, spectrogram, scenery, rain, scope, fire, off (each described under Backgrounds) |
| A | how strongly the ASCII background (spectrum, rain, scope) shows: soft (how it used to be), normal, bold. The code lines sit on their own bands, so they stay readable. With the worlds on, A picks their look instead: auto (film, and on each drop another look for 8 bars), night (as auto, but every world keeps a dark sky with its stars, so no cut lights the whole screen; with fewer flashes on, the worlds always have night skies), film, ASCII (the planet as text, each character in its own colour), code (the planet drawn in the song's own code the way ASCII art draws a picture: as many characters as the world is bright there, each in its colour, the world faint underneath), ink (the theme's two colours, dithered as the ID card's picture is), and the Locust Worlds page's print finishes: risograph, cyanotype, receipt, thermal camera, night vision, CRT, VHS, quadtree; and cells, the planet cut into cells of the worlds around it, turning over cell by cell into the next on each cut (after Days of Glitch's moving cells). A print look covers the planet, or the sky when the code sits over the planet. With chrome, A turns its collage off and on; with the spectrogram, it switches its colours between the rainbow and the theme's own; with the scenery, its scene: auto (a new one each song), the lake, the sea, the campfire, the snow, the city in the rain, the garden, the falls, Halloween, the sharks, the festival, the koi pond, space, the eye, and last auto again in the theme's two colours. Remembered |
| R | orb, over whichever background is picked (or none): after libraries.dev's Thinking Orbs, a cloud of 2,200 soft dots in 3D that holds a form for 8 bars and then flows, dot by dot, into the next, landing on the phrase's one: a sphere, a glitch ball (after animoscillator's glitch orb: the dots fade into a ball of neon noise smeared into streaks, each kick dropping fresh noise in and each bar's first kick breaking it up again), a crystal (a cube of dots on its corner), orbit paths with their dots running round them and bright particles among them, a staff the bass notes appear on as they're played, a spiral galaxy, a network its signals run through on the hats, a field of waves riding the spectrum, a sphere in slices that turn one a beat and then solve themselves (Thinking Orbs' moves), a globe's lines, a ring, an icosahedron, rings swelling with their bands of the spectrum, a burst of rays, ripples on a disc, and an outline that changes shape on the bar. The kick breathes it out, the clap spins it, the hats send a band of light round it, the bass swells the dots. Timed off the beat like the blocks |
| P | blocks on top of whichever background is picked, in turn: the punchcard blocks; dominoes (after mewtw0o's domino piano roll): every hit of the code stands as a domino that the playhead knocks over as it plays, landing on its beat and leaning on the one before when it's close, a held bass note a slab on legs that glows while the note holds and falls when it ends, a chord's notes one behind another; then off. Remembered |
| [ / ] | blocks sync fine-tune: ] if they land after the beat, [ if before (10 ms a press, remembered) |
| C | webcam behind the code, tinted to the theme. Press again for big eyes: little windows over your face with your eyes and mouth blown up, swelling on the kick (after lo.fi.sci.fi's segcam effect). Again for ASCII: the camera drawn as text (dense characters where it's bright), in place of the ASCII background. Again for off |
| (hands) | with the camera on, make a frame with your fingers (each hand an L: index out, the other fingers curled, the thumb wherever) and a window opens between your fingertips showing what's inside through a filter (16 of them: dithered blue and pink, negative, heat camera, the theme's colours and more; the first, keyframes, changes colours on every kick). It's a card with a filter on each side: turn one hand over and its end twists round to show the back; turn the whole card over and the back becomes the front. Flick it edge-on and back, bunch one hand's fingertips together, or wink, for the next filter. Pinch one hand (thumb on index) for a triangle; pinch both together, or open your hands, to close it. Keep your hands a little inside the edges of the picture: the tracker loses a hand that's half out of it |
| (portal) | with the camera on, make a circle with your hands (the tips of your index fingers together and your thumbs' tips together, one pair above the other; a diamond or a heart works too) and hold it a moment: a round window opens in it with a look inside: first your skull (make that circle in front of your face: an X-ray, your skull in it where your face is, turning as your head turns; it stays till you pinch or swipe on), then x-ray (white edges, with echoes spreading out from the middle), lilac (pale and grainy), glass (you gone clear, the room bent through you as through liquid glass), a kaleidoscope turning with the beat, a time tunnel (each ring further out a moment further back, so moving sends ripples through time), and the finger frame's heat camera, comic, pencil, RGB split, neon edges, mosaic and more. Pull your hands apart and it grows between them; spread them wide and hold them there a moment (its outline thickens), or spread them on out past the picture's sides, and it fills the camera's picture, with you cut out in front of it as you are (the code stays on top). Pinch (thumb on index) for the next look, spreading out from that hand (pinch again while it spreads for the one after); every 8 bars brings the next one too, from the middle (but for the skull). Once it fills the picture you can swipe as well: hold one open hand up a moment, then sweep it sideways, fast, and the look slides in after it (to the left for the next, to the right for the one before). Drop your hands and the window closes; once it fills the picture it stays till you make the circle again, which can be looser than the one that opened it. Hold the circle on after a window closes and the next one opens (after cure.visual's TouchDesigner portals) |
| (signs) | with the camera on, hold up a hand sign: βοΈ (two fingers up) for the next theme, π (held a second) to start or stop recording, β (one raised fist; two up, a flex, don't) to hush, π (an open hand) to come back from it. Each fires once a hold (the header shows the sign while you hold it), and none while the finger frame or a portal is open |
| G | glass: a blob of liquid glass floats over the code and bends it like a lens (after the AIRGLOW visuals by null.mpeg), swelling on the kick |
| O | open this code in Strudel: your browser opens strudel.cc with the code in its editor (in the link, after the #), ready to play with ctrl+enter and change. The vox line becomes the same notes on a synth (Strudel has no "vox" sample), and a punchcard of the whole thing draws under the code |
| M | record a video: what's in the window with the sound, into Videos\Toaster on Windows or Movies/Toaster on a Mac (see Saving things below). M again to stop |
| J | drop clips: while on, the first two drops of each song are saved as videos of their own, the build-up and the drop, into that same folder (see Saving things below) |
| X | export the song so far, decompiled: a MIDI file and the whole song as Strudel code, into Music\Toaster on Windows or Music/Toaster on a Mac (see Saving things below) |
| Space | tap the beat: from the fourth tap the tempo is yours, the beats on your taps and the first tap starting a bar. For a song it can't find the beat of (soft songs, rubato) or finds wrong. It stays until the song changes (the hits still fine-tune it), and a pause of 2 seconds starts the count over |
| Q | hush: every part muted with a _ in front of its name, the way Strudel's hush() stops everything, and the background dimmed (the sound itself keeps playing). Q again, an open hand or a new song brings it back |
| K | camera effect: none, cut-out (just you over the visuals: where MediaPipe's selfie segmenter finds a person, the rest of the picture goes see-through, and the camera moves up over the backgrounds), slit-scan (each row a moment later than the one above, so anything moving bends down the picture), datamosh (what a video codec does when it loses its key frames: the picture melts along with whatever moves, and comes back fresh on every bar line), windows (the room gone, you only through little windows that pop open wherever you move, each keeping its moment, so moving leaves a trail of them, a burst on each kick, one on your face; after lo.fi.sci.fi's segcam), glass (you gone clear: the room, in colour, bent through your shape as through liquid glass, light glinting off its edges, the bend sharper on the kick; the room behind you is learned as you move, so step aside for a moment and it comes out clean; after ttyproj's "Transparent Distortion", made in TouchDesigner), dots (you as a neon dot matrix: each spot of the picture a round dot as big as it is bright, violet in the shadows to pink nearly white, with teal edges, the room faded to a faint grid; the kick swells the dots and each new chord slides the colours; after decayingsun's "dream machine"), voxels (the camera rebuilt as a room of cubes, each the colour of its patch of the picture: where the selfie segmenter finds you, your cubes stand out from the wall, a tiled floor runs out from its foot, and the view, from a little above, swings slowly side to side; the kick swells the cubes and lifts their light, yours most; after ntrxcam's voxel camera). The first three work on the ASCII camera too, and with it the windows show you as text. Remembered |
| N | now-playing ID card: song, tempo, key, and your webcam as a 1-bit dithered picture (with the camera off, the song's cover from Windows if the player gives one, in finer dots and sharpened so its lettering survives, else the sound). N again makes it big (the cover or you in big dots, as big as fits), a third time puts it away. On by default in the vertical layout, each layout remembers its own setting. In the mini player it's the big one shrunk to fit beside the code |
| D | the drop, now: the drop effect (it also fires when the kick returns after a 3+ second break), and the backgrounds' drop moments: the scenery's toast pops, the koi gather, the sharks charge, the fireworks go up, the fire flares. With B set to off, just the backgrounds'. With the camera on, some pop-ups close in on your face or one eye (one on a little CRT screen) |
| B | drop effect: XP takeover, blue screen, not responding (Windows XP's hung-window smear: the cursor drags a toaster.exe window round a figure 8 for 4 bars; it hangs, leaves a copy of itself every 8th, and shows the visuals under it in a new look every beat, negative, thermal, cyanotype, a green CRT, edges, dither, x-ray; then the trail rewinds), off. Off until you pick one |
| I | machine readout (const machine = {...}) |
| L | vertical 9:16 layout for TikTok/Shorts (resizes the window) |
| W | mini player: the window shrinks to a small panel in the corner, on top of everything else, still listening (the code, and the card if it's on); W again brings it back |
| T | theme: bluescreen, blackscreen, terminal, pink, whitescreen |
| Y | CRT: an old TV over everything, on any theme. It comes on from a white line opening into the picture and goes off into a dot; scanlines and phosphor stripes, a flicker and a band rolling down it, glare on the glass, the corners rounded and dark, the code fringed red and blue and glowing. The picture swells on the kick and slips into static on the drop; each background (V) is a channel, changed through static with its number in the corner, VCR green, and the theme (T) shows there as the picture setting. With fewer flashes, it stays still: no flicker, roll, static or white line. Remembered |
| E | name the song yourself |
| Z | hide the code: just the visuals, for Toaster as a visualizer (it's still written underneath; Z again shows it). The scenery opens out into the room the code kept: the sharks' float and the koi's lily pad come to the middle, the festival's stage moves to the middle, and in a tall window Halloween's moon rises into it. Remembered |
| H / F | hide header and footer / fullscreen |
The background and its strength, blocks, orb, card, glass, theme, camera effect and drop-effect choices are remembered between launches, and so are the keys; the camera always starts off.
V steps through them; A sets their strength, or for some their look (see the keys above).
-
Spectrogram is what Toaster hears, as a landscape, and what it makes of it: the sound rises out of a floor in glossy hills, the frequencies across it (the bass at the right, the highs far off to the left), a bar of time rolling toward you from the back, louder taller and further up a rainbow from orange through green and blue to violet and white (after the 3D spectrum analysers); a faint line crosses it on each beat and a bright one where the chord changes, named at its end, and each time Toaster recognises something a pin rides along with the code it became, bd on a kick, cp on a clap, hh on the hats, each bass note as the code writes it (e1, a3).
-
Cuts gives each drum a scene of its own, cut to on its hits, each a view of the song in Toaster's look: the drum's word huge, its line of code magnified, its 16 steps as a punchcard, the spectrum falling in dots, the waveform, you or the cover in big dots, the tempo and key, the spectrum as text mirrored both ways like a kaleidoscope, a tunnel of rectangles flowing out (those two after rentalunit5's video-synth pieces).
-
Spiral and pitch wheel are after the visuals Strudel draws: the spiral is time going round, a turn a bar, every kick, clap, hat and bass note a mark where it fell, the newest bar outside; the pitch wheel has the twelve notes round a circle, the chord drawn as a shape between its notes, the bass note as a line out from the middle and the melody's notes as dots that fade.
-
Warp is a feedback shader in the style of Hydra patches (its own, not Hydra): stripes folded into a kaleidoscope, trailing and swirling toward you, the kick punching the zoom.
-
Fire is the old Doom fire in square pixels, lit by the song: it burns steady along the bottom, a little lower where the spectrum is quiet (the bass in the middle, the highs out at the sides); the song sets how high it reaches, the kick lifts it and the hats spit sparks. It burns low under the code, and smoulders while the song is quiet. When it comes on, and on every drop, it flares, leaping to twice its height and dying back (an idea from not.axel on Threads).
-
Worlds is a film of planets, after Anthropic's Claude Opus 5.5 launch film: the kick on each bar's one cuts to another world on the same horizon (every other bar with fewer flashes), an extreme close-up of something (honey, agate, lace, a leaf, bread crust, plant cells, oil on water, a circuit board, the code itself) seen as a planet from low orbit, the foreground soft, gold dust in the air; when the kick drops out the film rests on a horizon at dawn till it's back.
-
Chrome is a pool of liquid chrome seen from above with an oil-slick film on it: every kick drops a bead where it lands in the bar (so the rings spell out the kick pattern), claps strike lightning in the sky it mirrors, the bass swells it and each chord gives the film its own colours (real thin-film interference over the visible spectrum); every two bars a collage cuts into it: mosaic, dragged rows, a barcode, the liquid's contour lines, a dither, graph paper, and a panel with the song, artist, key and tempo.
-
Scenery is the calm one: little worlds drawn in solid colour, characters and pixel art (it began as an ASCII landscape, after Claude FM's ASCII world): snowy mountain ranges, lit on the face toward the light and shaded on the other, mist in the valleys, a shore of pines and trees in blossom, a lake that mirrors it all, a meadow of grass and flowers, and a little toaster fishing from a rowboat out on the lake. On a light theme it's day (a sun, clouds, a flock of birds); on a dark one, night: a full moon, a sky of stars by the real counts with the Milky Way across it, fireflies over the grass. It glides past a step a beat, each kick ripples the lake and dips the toaster's float, the grass sways and the fireflies blink more when the hats are busy, the toast pops up on a drop, and every 8 bars birds cross or a star falls. A picks the scene, or auto, a new one each song:
- The lake (the landscape above)
- The sea, always at night, a red and white lighthouse on a rocky headland with the keeper's cottage beside it, its two beams sweeping round every two bars and flaring at you on each bar's first beat, the Milky Way rising over the water, the moon's light broken on the waves and running up the wet sand, foam on the kicks, a crab walking the beach, the toaster fishing from a rock
- A campfire in a clearing in the pines, its flames leaping and roaring on the kicks and its sparks flying with the hats, a tent lit from inside, the toaster toasting bread on a stick
- The snow, a log cabin on a frozen lake under the aurora, its curtains drifting with the beat and flaring on the kicks, snow falling thicker when the hats are busy, the toaster ice fishing
- The city in the rain, a street across from a row of buildings whose windows go on and off a few each bar, a shop with a neon sign (TOAST), towers whose red lights blink on the beat, the rain heavier when the hats are busy, the puddles rippling on the kicks, a taxi going by every 8 bars, the toaster on a bench under an umbrella
- The garden, a koi pond in spring under a red drum bridge (its reflection closing the ring), the koi swimming their rounds and darting on the kicks, a cherry tree in blossom, its petals falling thicker when the hats are busy, stone lanterns breathing with the loudness, a pagoda on the hill, the toaster on top of the bridge dropping crumbs on each kick
- The falls, a waterfall pouring between cliffs of cracked rock into a pool, its water in unbroken streams that quicken as they fall, a dimmer sheet behind them, the pouring faster with the tempo, a surge of white racing down it on each kick and spray thrown up from its foot, the whole falls swelling on a drop, its mist rolling up, a rainbow in the spray by day (a moonbow at night) and an aurora over it all at night, the falls and the aurora mirrored in the pool with foam drifting off across it, a trout leaping every 8 bars, the toaster floating in the pool on an inner tube
- Halloween (auto picks it only in October), a graveyard on a hill under a great moon, a black wood along the hill and a bare tree reaching across the moon, the toaster flying across it on a broomstick in a witch's hat (its hat lifted when the toast pops), bats flitting round the moon, their wings beating with the beat and their eyes glinting (more of them when the hats are busy), mist and will-o'-the-wisps among the graves, jack-o'-lanterns at the front, each carved with its own face and lit from inside, flaring on the kicks, and every 8 bars a ghost rising from a grave; by day it's dusk, the moon a great banded sun going down and everything else in silhouette
- The sharks (after stackedlol's ascii-sharks), shallow water seen from above, a hammerhead, a blacktip reef shark and a zebra shark circling the toaster on its float, each drawn as tiles of colour with a glyph on each, its hide shimmering, schools of little fish (a stroke each, along its way) scattering from them, a bait ball of them circling the float, pulsing on each kick, which the sharks charge on a drop (and every 8 bars, when the toast pops), cutting through it over the toaster till it scatters, after which it gathers again, each kick rippling out from the float and making the fish flinch; by day the light's net drifts on the sand beside their shadows, by night their wakes light up the plankton
- The festival, always at night, a stage on the far shore of a lake in the mountains, the toaster DJing at its decks in headphones, a sign on the truss lit up (TOASTER), its lights' beams fanning up into the sky and sweeping round every two bars, flaring on the kicks, the screen behind the decks playing the music as bars, the speakers thumping, the show's colours changing every 8 bars; fireworks going up over the mountains every 8 bars and on a drop, bursting into streaking sparks; the crowd at the water's edge against the light, heads bobbing on the beat, glow sticks and phones up, every arm in the air when the fireworks go; the lake mirroring all of it
- The koi pond, seen from above, five koi (a kohaku, a showa, a sanke, a yamabuki and an orange ogon) swimming slow rounds of it, each drawn as tiles of colour with a glyph on each, their fins and tails see-through, a little faster on the kicks; lily pads in the corners, two in flower, the koi passing under them; the toaster on a lily pad of its own, a ripple spreading from it on each kick; when the toast pops (every 8 bars) the nearest koi comes for the crumbs, and on a drop they all do, gathering round the pad like the petals of a flower; click the water to drop food there and the three nearest come to it; by day the light's net drifts over the pebbles beside their shadows, by night fireflies glow over the water
The code is typed the way a live coder performs it: a part that stops gets a _ in front of its name
(Strudel's mute) and loses it when it comes back, a part never heard yet stays a comment, and a
change lands on the next bar line, the way ctrl+enter on the downbeat does (the line flashes, and
the rest of the code with it). Now and then a closing bracket gets left out: a red error shows,
then the caret goes back to fix it.
- The filters sit on sliders,
.lpf(slider(850, 100, 4000))(Strudel draws a slider in the code for that); a thin track under each shows where the value is in its range, and when the music's filter moves, the number slides there instead of being retyped, like dragging the slider. - A bass whose filter sweeps on the 8ths, triplets or 16ths (dubstep's wobble, riddim's pulse)
gets Strudel's filter LFO, locked to the bar:
.lpsync(8).lpdepth(3)for the 8ths, with some resonance and grit. The export writes it the same way. - When the chords pump under the kick (sidechain, in most house and EDM), the kick gets
.duck("2:3").duckdepth(.6)and the bass line and chords go on orbits 2 and 3, the way you'd set that up in Strudel. The depth follows how far they dip. - The tempo line says
// breakdownwhile the kick is out for a bar or more, and// dropfor the first 4 bars after a drop. - A line too long for the window (often, in the vertical layout) goes on over more rows, broken before a method call and indented, the way you'd break up Strudel by hand.
- Half-time music (dubstep, much of trap: the snare on 3 alone) is written the way its producer would: the bar starts two beats before the snare, the kick on 1 and the clap on 3, rather than the claps read as a 4/4 backbeat a beat off. A slow song heard at double its tempo (a ballad at 85 counted as 170, its backbeat landing once a bar) goes back to its own tempo, the snare on 2 and 4.
- M records the window with its sound into
Videos\Toasteron Windows, orMovies/Toasteron a Mac, as an MP4 ready for TikTok, Shorts and Reels. Switch to the vertical layout (L) first for a 1080 x 1920 video; it keeps everything clear of the edges Reels and TikTok trim on tall phones. - J turns on drop clips: the first two drops of each song are saved as their own videos (the build-up and the drop) into that same folder.
- X exports the song so far into
Music\Toasteron Windows, orMusic/Toasteron a Mac: a MIDI file (drums, bass, chords and lead on their own tracks) and the whole song as Strudel code, every 4 bars as heard, the different ones named and played in order witharrange(). Paste it into strudel.cc and press ctrl+enter.
More on all three in docs/how-it-works.md.
Everything Toaster hears and sees stays on your machine. The sound is worked out in the app, and the camera (off until you press C) is looked at by the system's own face detector (Windows' face detector, or the Mac's Vision framework) and by Google's MediaPipe, both running on your machine. Nothing is uploaded. It reaches the internet for two things only: GitHub, when it starts, to see whether there's a newer Toaster (turn that off in the help, under Updates), and strudel.cc when you press O (your browser opens it with the code in the link).
- It does best with a steady beat. A song without clear drums can take 8 to 20 seconds to find one; tap Space on the beat to give it the tempo.
- The song's title (and its cover, for the ID card) come from the system's media controls (Windows' media controls, or the Mac's Now Playing), so any player that shows up there works: Spotify, browsers and the rest.
- For the finger frame, the portals and the hand signs, keep your hands a little inside the camera's picture.
- What it can and can't hear yet: the end of docs/how-it-works.md.
With Node.js (it's built with Node 24):
npm install
npm start # run it
npm run dev # run it with a debugging port (9333) for tools/cdp.mjs and tools/checks.js
npm run package # build for the OS you're on: dist/Toaster-win32-x64, or dist/Toaster-darwin-universal
On a Mac, npm start compiles the Swift helpers (now playing, and faces) the first time, with
Xcode's command line tools. npm run package:win and npm run package:mac build the other OS's
app; the Mac app has to be built on a Mac. Each release's Mac app is built on GitHub's Macs
(.github/workflows/mac.yml), signed ad hoc.
How it works inside, and the test songs it's checked against: docs/how-it-works.md.
Toaster is MIT licensed (LICENSE). It uses Google's MediaPipe (Apache 2.0) for the camera; THIRD-PARTY-NOTICES.txt lists everything it uses and the artists whose looks it's after. The code it writes is Strudel. Toaster is an independent project, not made by or affiliated with the Strudel project.



