Skip to content

Latest commit

 

History

History
27 lines (16 loc) · 1.8 KB

README.md

File metadata and controls

27 lines (16 loc) · 1.8 KB

Matisse 🖌

Matisse is a minimal gallery of generative art written with Ink.

A collection of art generated by Matisse

Built entirely on Ink

Except for a couple of lines of JavaScript to bootstrap the app, Matisse is built on a stack entirely based on my Ink programming language. Matisse's core drawing functions and generative algorithms are all written in Ink, and the Ink code is compiled down to JavaScript to run in the browser with September, an Ink-to-JavaScript compiler that's itself written in Ink. The whole project also uses the inkfmt code formatter, which is an Ink program.

I think that's kind of cool 🙌

Development and adding new pieces

Developing Matisse pieces is easiest if you have the following tools installed.

Just running make in the project directory will compile the Ink program, save it to static/js/bundle.js, and print it out. While iterating on art pieces, it's convenient to re-compile the program on every change and immediately save it. make watch or make w do exactly this -- they'll re-run the compiler every time a change is made to the Ink code in `src/.

make fmt or make f will auto-format the Ink code in the repository.

Matisse is currently deployed with Vercel at matisse.vercel.app.