Skip to content

crazyscot/brot3

Repository files navigation

An interactive fractal explorer.

This is my third Mandelbrotter. brot2 was the previous incarnation.

A screenshot of the brot3 window showing a zoom into the Mandelbrot set.

This time it's in Rust, building a graphical UI using Tauri and OpenSeadragon.

More notes to come here when things are in less of a state of flux...

Building

Engine & CLI

Prerequisites:

  • Rust toolchain (we target stable)
  • (Linux only) mold (linker; see .cargo/config.toml)

Use cargo build or cargo build --locked in the usual way. There are unit tests, benchmarks and a reasonably strict clippy config.

There is no packaging configuration set up for the CLI at present.

GUI

Same as engine. There is no packaging configuration set up here yet.

Releasing (notes to myself)

Prerequisites:

  • cargo install git-cliff and ensure that ~/.cargo/bin is on your PATH.

Steps:

  • Create release changeset
    • Update project version in cargo.toml
    • git cliff --tag v<intended new tag> > CHANGELOG.md
    • commit with prefix chore(release)
  • Merge changeset to main as usual
  • Update release branch to the desired release point, push it to github.
  • ✨✨ automation happens ✨✨
  • Edit and publish the draft release in Github. You may find it useful to press the button to autogenerate the release notes; git cliff might also yield insights.