lily

Lily is a web framework that aims to both allow for live server updates and offline interactivity that saves user actions until the connection is restored. Think both collaborative and offline document editing.

As a Redux-style framework, Lily has a central store and components that are able to react to changes to model changes within the central store. The client and the server sync this central store through a persistent connection, with client-side rendering for the user interface. Rendering of individual components are owned by the components, not by the central store.

Lily is designed to be modular, with each part replaceable by your own implementation. The current modules sit as follows:

  1. lily/client: client runtime (JS target only)
  2. lily/component: components for frontend interactivity (JS target only)
  3. lily/event: event handlers (JS target only)
  4. lily/server: server runtime (Erlang target only)
  5. lily/store: central store, with updates dispatched to components
  6. lily/transport: transport abstraction and wire protocol

Framework philosophy:

Note that Lily is experimental, with breaking changes expected at this stage.

Values

pub const version: String

The current version of Lily.

Search Document