Skip to content
Projects

giraffekey/xylo has 83 GitHub stars and 2 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-15 08:09 UTC. Last push 2026-02-15.

How these counts are measured

Measured star growth

in 24h
0
in 7 days
0
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

About

A functional programming language for procedural art

Creative & Media

README.md

Original

Xylo   License Build Status Latest Version Docs

Xylo is a domain specific language of the functional paradigm that is designed for use in creative coding and procedural art.

Documentation: https://xylo-1.gitbook.io/docs

example

Example

root =
    l 0 FILL : ss 400 bouquet

quality = 750

bouquet =
    r 36 (ss 1.3 flower5)
    : r 15 flower6

flower6 =
    demiflower6
    : flip 90 demiflower6

flower5 =
    demiflower5
    : flip 90 demiflower5

demiflower6 =
    collect (
        for i in 0..12
            r (i * 30) (petal6 quality))

demiflower5 =
    collect (
        for i in 0..5
            r (i * 72) (petal5 quality))

petal5 i =
    if i == 0
        EMPTY
    else
        s 1 0.0001 SQUARE
        : ss 0.005 (tx -0.5 (l 0 CIRCLE))
        : tx 0.5 (r 144.04 (ss 0.998 (tx 0.5 (lshift (1 / quality * 0.6) (petal5 (i - 1))))))

petal6 i =
    if i == 0
        EMPTY
    else
        s 1 0.0001 SQUARE
        : tx -0.5 (ss 0.01 (l 0 CIRCLE))
        : tx 0.5 (r 120.21 (ss 0.996 (tx 0.5 (lshift (1 / quality) (petal6 (i - 1))))))

Installation

Released Builds

You can find the latest release of the Xylo binaries here.

Cargo Install

You can install Xylo using Cargo:

cargo install xylo-lang

Manual Build (Linux)

Clone the repo:

git clone https://github.com/giraffekey/xylo

Build the repo:

cargo build --release

Copy the CLI:

sudo cp target/release/xylo-lang /usr/bin/xylo

Usage

Write some Xylo code in a .xylo file e.g. art.xylo.

Then, generate an image from that code:

xylo generate art.xylo --width 800 --height 800

If your code is valid, you should see an image output to art.png.