-
Embrace composition. Everything is a
Node. Compose behavior and graphics with trees. - Locality of behavior. An API specifically designed for keeping related code physically close together.
- Precise live reload. Wield fine-grained control over how each node changes with the source.
- Platform flexibility. Ignis runs wherever Flutter runs: desktop, mobile, and web.
@override
void build() {
super.build();
final square = add(
ShapeNode(
shape: .square(40),
anchor: .center,
paint: Paint()..color = Colors.orange,
),
);
tick((dt) {
square.angle += pi / 4 * dt;
});
}
Loading the scene…
By the way...
Every demo on this site is a real Ignis scene compiled into the page.
Start Here#
- Motivation - why this engine exists.
- Nodes - how to use a
Node.
AI Usage#
Some parts of Ignis are built with the help of AI. The degree of AI involvement is tracked on a per-source file basis through an AI disclosure convention. See more details here.
This documentation site contains no AI-generated text. This is me, writing everything out with my grubby little fingers.
Attribution#
The mark in the header is a beautiful painting by Mewyn.
The example assets in the demos are provided by Infected Tribe.
