Showcase

Made with Lumiose

Complete apps, each built with lumiose build and published as static files: the Dotmatrix apps from their own repository, and the samples from the examples folder. Start your own with the getting started guide.

Every rendering mode

Each route picks how it renders, and the same components work in all four.

mode = static

Static

Prerendered at build time to plain HTML files, with staticPaths for params.

Running: Long Way Round

client:load · idle · visible

Islands

Only interactive components hydrate, with serializable props and slots. This site is static, with islands for the search, the playground and the landing's light.

Running: This site

mode = server

Server

Rendered per request and streamed: the shell first, then each Suspense boundary.

Running: Bookshelf (source)

Apps

Demos

Smaller samples with placeholder content, to read alongside their code.

  • Long Way Round ssg-travel-journal

    A static travel journal from Markdown posts: prerendered pages, tags and pagination, an RSS feed, a search island and cross-document View Transitions.

    • mode = static
    • .md imports
    • islands
    • View Transitions
  • Vite counter vite-counter

    The smallest setup: @lumiose/vite in a plain Vite app, with a counter and a todo list built from signals and scoped styles.

    • @lumiose/vite
    • signals
    • .stsx
  • Bookshelf ssr-bookshelf

    A server-rendered book catalogue with accounts, reviews and a reading list on SQLite: streaming SSR, form actions that work without JavaScript, and islands. It needs a Node server, so it does not run here.

    • mode = server
    • form actions
    • islands
    • adapter-node

Used by

No external production apps yet.

Running Lumiose in production? Add your app: append its name, URL and a one-line description to apps/web/src/content/used-by.ts and open a pull request. The list counts apps the Lumiose maintainer does not run, and it is how the stability rules know that Lumiose has real users: there is no telemetry.