Ark v0.5.0 Released — A Minimal, High-Performance Entity Component System (ECS) for Go

Hi everyone,

I’ve just released version v0.5.0 of Ark — an Entity Component System (ECS) library for Go that is designed for performance and simplicity.

If you’re new to Ark: it’s a minimal ECS library focused on performance and simplicity, with a clean API and zero dependencies. Beyond its core ECS functionality, Ark stands out for ultra-fast batch operations and first-class support for entity relationships.

The newly released v0.5.0 brings a mix of performance improvements, usability upgrades, and documentation enhancements. Queries are now faster thanks to smarter indexing, and new methods make it easier to sample random entities. The documentation has been expanded with a new chapter on design philosophy and limitations. You’ll also find new stand-alone examples covering advanced topics like entity relations, world locking, spatial indexing, and parallel simulations.

For a list of all changes and improvements, see the changelog.

If you’re looking for an ECS that delivers performance without sacrificing usability, give Ark a try. I’d love to hear your thoughts, questions, or feedback. Contributions are always welcome!

1 Like

Actual commit history? Closed issues? A readme that isn’t 90% emojis? Multiple contributors? By jove - I think this is an actual OSS project written by humans! Good work!

Q: in what game development ecosystem is this meant to be used? Like is it meant to be used in combination with Ebitengine or something similar? Game dev is pretty far outside my wheelhouse.

1 Like

Thank you! Yes, it is written by humans with great care and dedication.

Ark is not tied to any particular engine or dev ecosystem. For those I know that use it for games, they indeed mostly combine it with Ebitengine, but the Pixel engine or any other is also possible. Due to its minimalist spirit it is very versatile (no “systems” [the “S” in ECS] that you are forced to used, just queries, so you can fit it into any structure).

Further, Ark is used for the development of scientific simulation models, in the fields of ecology and epidemiology so far. And I hope to be able to promote the use of ECS for individual-based modelling further, as it is really a perfect fit.