Perseus is a web development framework for the Rust programming language that focuses on the state of your app.
It supports reactivity using Sycamore, and builds on it to provide a fully-fledged framework for developing modern apps.
The main key idea that underpins Perseus is about templates, and the primary architectural matter to understand is how Perseus apps actually work in terms of their components. Templates are the key to understanding Perseus code. Once you do, you should be able to confidently write clear code for apps that do exactly what you want them to. Nicely, this core concept also correlates with the file of code that defines the majority of the inner workings of Perseus (which is 600 lines long…). There are two things you need to know about templates: An app is split into templates, and each template is split into pages. A page is generated from a template and state. Template + state = page
This is free and open source software.
Key Features
- Supports static generation (serving only static resources).
- Supports server-side rendering (serving dynamic resources).
- Supports revalidation after time and/or with custom logic (updating rendered pages).
- Supports incremental regeneration (build on demand).
- Open build matrix (use any rendering strategy with anything else).
- CLI harness that lets you build apps with ease and confidence.
- Full i18n support out-of-the-box with Fluent. Just add translations using Fluent, and your app can be set up in seconds in multiple languages, with automatic user locale detection.
- Lighthouse scores of 100 on desktop and over 95 on mobile.
- Support for hot state reloading (reload your entire app’s state after you make any code changes in development.
- Built-in plugins system and full customizability of almost every part of the system
Website: github.com/framesurge/perseus
Support:
Developer: Sam Brew
License: MIT License
Perseus is written in Rust. Learn Rust with our recommended free books and free tutorials.
Related Software
| Rust Frontend Web Frameworks | |
|---|---|
| Tauri | Framework for building tiny, blazing fast binaries for all major desktop platforms |
| Yew | Modern framework for creating multi-threaded front-end web apps |
| Leptos | Full-stack, isomorphic Rust web framework |
| iced | GUI library focused on simplicity and type-safety |
| Dioxus | React-like library for building fast, portable, and beautiful user interfaces |
| Seed | Framework for creating fast and reliable web apps with an Elm-like architecture |
| Sycamore | Next generation UI library |
| Vizia | Declarative GUI library |
| Xilem | Experimental, next-generation cross-platform Rust UI framework |
| Perseus | State-driven web development framework |
| Percy | Collection of libraries for building interactive frontend browser apps |
| stdweb | Standard library for the client-side Web |
| mogwai | View library for creating GUI applications |
| Silkenweb | Library for building reactive web apps |
| sauron | Suited for developing web application which uses progressive rendering |
| Dominator | High-performance declarative DOM library |
| Kobold | Easy declarative web interface |
| Draco | Build client side web applications with Web Assembly |
| Smithy | Build WebAssembly applications with Rust |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.