Cinnog uses Leptos with static site generation and island mode to render a static website. Dynamic parts of the website (islands) use WebAssembly to hydrate in the browser.

All date required to build the website is collected and prepared in a data layer. Cinnog's data layer is a Bevy ECS World and can be queried using Bevy systems.

I wrote an example project using Cinnog and deployed it.

The preparation of the data layer currently looks like this in the example project:

async fn main() -> io::Result<()> {
        .insert_resource(SiteName("Bevy ECS + Leptos = 💕".to_owned()))

Also see the blogpost about the idea of Cinnog. © 2022