Skip to content
CrossFly is 100% open sourceFollow us on GitHub
CrossFlyCrossFly
Get started

This documentation is currently available in Portuguese. English and other languages are on the way.

Concepts — Understanding CrossFly

Concepts — Understanding CrossFly

The canonical explanation of the why behind CrossFly: architecture, component model, rendering pipeline, paint thread, layout and lifecycle.

Concept🟢
The layered architecture

The mental map of CrossFly — app → ui → core → gl → libGDX — and why this separation exists.

Concept🟡
Everything is a Component

The unifying idea of CrossFly — only Component exists, and container = Component + Layout.

Concept🔴
The rendering pipeline

How a pixel reaches the screen — Paint → per-primitive renderers → OpenGL — and what batching is.

Concept🟡
The paint thread

CrossFly's threading model — single-threaded on the paint thread, onUI, and on-demand render.

Concept🟡
Layout and the Relative model

How CrossFly measures and positions — relative by default — and why this is the basis of responsiveness.

Concept🟡
Styles and themes

The appearance model — Skin is structure, Theme are semantic roles per mode — and runtime theme switching.

Concept🟢
The lifecycle

From bootstrap to component — Main, Window.onShow, and the onAdd(firstTime)/onRemove hooks.

Concept🟡
State and data flow

CrossFly's state philosophy — no reactive binding, no DI, imperative + explicit invalidation.