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 |
| 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.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

