The Manguebyte ecosystem
Aratu
A live-coding language that reads like music: measures, beats and note values first, in Portuguese, Spanish and English, in the browser. In development, and playing on Manguebyte.
In development. The language reads, checks and schedules every example in its book, and the editor runs in the browser with nothing to install. Running inside a DAW is planned.
Time the way a musician counts it
Aratu is a live-coding language and environment for people who know music. Measures, time signatures, note values and tempo come first, so that what you type is laid out in time the way a musician already thinks about it.
Note names work in solfège (dó4 ré4 mi4) as well as in letters, and the keywords themselves can be written in Portuguese, Spanish or English. When a bar does not add up, Aratu says so in a musician’s words, in any of the three. It runs in the browser today; running inside a DAW, in step with the host’s transport, is planned.
Three places in the editor
- Learn
- A course of 24 lessons, from the first sound to a whole piece, made for the classroom: rhythm and meters, Brazilian percussion, melody and harmony, dynamics and form, tempo and feel, playing live, sound and mixing. It ends with a maracatu project. Every example plays on the page, and every exercise is checked by what it plays, with what differs told bar by bar.
- Manual
- The whole language in 21 chapters, in the same order as the course, with every example playable.
- Play
- A free editor with an editable rhythm map, a knob beside every number that sets the tempo or the sound, and a Sounds panel. A change made while it plays comes in at the next bar line, or at the next beat. A stage mode shows only the code, full screen, for playing in front of an audience.
Built on Manguebyte
The editor plays through manguebyte-web, Manguebyte’s engine for the browser: every voice in its Sounds panel, from sampled instruments to modelled strings, FM, an organ, an acid bass and a synth, each part’s effects, and the master bus with its true-peak limiter. The Brazilian percussion lines, the guitar’s golpe and the clap still play on a small Web Audio stand-in until Manguebyte has samples for them. The engine itself is still in progress: tested natively and in Node.js, not yet under load in a browser.
Why “Aratu”?
The aratu is a crab of the mangrove, the mangue of Recife that gave manguebeat, and Manguebyte, their names.
A taste
From Aratu’s README. A space separates beats, symbols written together share their beat (cc is two eighths), _ holds and - rests; chords are written as a lead sheet, and strums with d and u.
meter: 4/4
tempo: 96
key: A minor
drums {
hh = cc cc co cc
bd = b - b -
sd = - s - s
}
bass = | a2 _ e2 _ | f2 _ c3 _ |
guitar {
chords = | Am | F | C G | G |
strum = D du -u du
}
40e6286, as it is in the file.What its tests check
Aratu has its own repository and CI, at commit 40e6286. These tests run there on every commit:
- aratuevery_
block_ okof_ the_ book_ works - aratuevery_
exercise_ oksounds_ the_ same_ in_ every_ language - aratuevery_
feature_ okis_ taught_ in_ every_ language - aratuevery_
example_ okin_ the_ manual_ checks - aratuthe_
rhythm_ okrules_ place_ parts_ exactly - aratuCI job: the web editorok
Read more
The Manguebyte ecosystem
Two more projects from Recife grow from the same mangue, built to run on Manguebyte.
-

This framework
Manguebyte
The open-source audio framework for Rust, under MIT or Apache-2.0. Aratu already plays on its browser engine; Parabolic is to be built on it.
-

In development
Aratu
A live-coding language that reads like music: measures, beats and note values first, in Portuguese, Spanish and English. Its editor runs in the browser and plays on Manguebyte.
-
Planned
Parabolic
A tool for musicians to record their own instruments and turn them into plugins and samplers without writing code.