Minart

What is Minart?

Minart is a minimal Scala library for multimedia applications, such as generative art or simple video games.

It's based on a few simple principles:

  1. Simple things should be simple, complex things can be complex
    • It should be easier to put a pixel on the screen than to draw an image
  2. Platform agnostic abstractions vs platform specific optimizations
    • The code should cross-compile between JVM/JS/Native with the minimum number of changes

Development status

Minart is still in a 0.x version. Quoting the semver specification:

Major version zero (0.y.z) is for initial development. Anything MAY change at any time. The public API SHOULD NOT be considered stable.
As such, while it's OK to use Minart for small demos, it's not recommended to use it for commercial projects.

Limitations

Due to the design pricinples of Minart, it will never achieve the performance of dedicated libraries.

As such, while Minart can be used to develop video games, if performance becomes an issue it might be worth looking into dedicated game engines, such as Indigo.

Also, Minart is only suitable for bitmap graphics. For vector graphics it is recommended to use an appropriate library, such as Doodle.