/mandelbrot-cli

Multiplatform fractals explorer 🌌

Primary LanguageGoMIT LicenseMIT

mandelbrot-cli

Multiplatform, Elegant and clean terminal mandelbrot fractal explorer written in pure golang with concurrency to make the computing of the fractal more efficient.

mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli mandelbrot-cli


Controls

  • Up: W
  • Down: S
  • Left: A
  • Right: D
  • Zoom in: I
  • Zoom out: O
  • More Iterations: +
  • Less Iterations: -
  • Change color palette: C
  • Quit: ctrl+c

The quality of the mandelbrot set depends on how many pixels you have in your terminal, if you want to display more pixels, on most terminals you can do so with ctrl+- or by scrolling the mouse wheel.

Note: The more pixels you display in your terminal, the slower the rendering will be


Compiling and running

Firstly you have to install golang and then...

git clone https://github.com/MicheleFiladelfia/mandelbrot-cli

cd mandelbrot-cli

#*nix
go build -o mandelbrot-cli
#windows
go build -o mandelbrot-cli.exe

./mandelbrot-cli

The best terminals where to run mandelbrot-cli

You can run mandelbrot-cli in most of *nix terminals, but if you want the best possible experience, you have to run it in one how the tested terminals below:

  • gnome-terminal
  • konsole
  • terminator
  • yakuake
  • kitty
  • alacritty (Fastest in rendering and best quality)
  • xfce4-terminal
  • windows terminals

Acknowledgments

In this software is used The ELM Architecture provided by bubbletea TUI framework.


MIT license