A Gleam web framework for building HTML templates, single page applications, and real-time server components.
Lustre is a web framework for the Gleam programming language that enables developers to build HTML templates, single-page applications, and real-time server components. It addresses the complexity of modern frontend development by offering a unified, functional approach to state management and UI construction.
Gleam developers looking for a cohesive, functional framework to build web applications, especially those who value simplicity and consistency over a multitude of options.
Developers choose Lustre for its opinionated design that reduces accidental complexity, its universal components that work across client and server, and its familiar Elm/Erlang-inspired architecture that makes state management predictable.
A Gleam web framework for building HTML templates, single page applications, and real-time server components.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Constructs HTML using pure Gleam functions without templates or macros, making code predictable and testable, as emphasized in the README's feature list.
Uses an Elm and Erlang-inspired architecture to manage state, reducing accidental complexity and providing a consistent pattern across applications, per the README.
Components can run in the browser, as Web Components, or on the server, enabling code reuse across targets, highlighted in the philosophy section.
Includes command-line tools for scaffolding and building apps, streamlining development workflow, as noted in the features list.
Allows generating static HTML for performance and SEO benefits, integrated directly into the framework, mentioned in the key features.
Tied to Gleam, a less common language, limiting access to a broad range of libraries and community resources, which can hinder integration and support.
The framework's philosophy of 'one clear way' may restrict flexibility for teams accustomed to more customizable or diverse approaches, as admitted in the philosophy section.
Additional setup is required for development tools, such as installing inotify-tools on Linux for file watching, adding complexity for some environments per the installation note.