| Crates.io | maf_typed |
| lib.rs | maf_typed |
| version | 0.1.0-alpha.6 |
| created_at | 2026-01-01 16:47:41.284847+00 |
| updated_at | 2026-01-01 16:50:48.000007+00 |
| description | MAF Typed provides type generation for MAF applications and libraries. |
| homepage | https://maf.gilbertz.me |
| repository | https://github.com/giilbert/maf |
| max_upload_size | |
| id | 2016451 |
| size | 30,726 |

A toolkit for making realtime apps.
Making realtime apps is a PAIN IN THE A*$ ☹️☹️☹️.
Suppose you want to make a Kahoot-like realtime quiz app. Broken down, you will need to:
Option 1: Use a server-side library like Socket.IO to handle the realtime communication, and then add a bunch of code to handle the game logic.
Option 2: Use a client-side library like Firebase or Liveblocks to handle the realtime communication, with code running on the client being the authoritative source of truth.
The core problem with realtime apps is managing ✨ STATE ✨.
Existing tools make it feel unnatural to work with state. Why can't we have ...
fn handle_request(state: &mut State, request: Request) -> Response {
// ...
}
... for realtime apps?
MAF is a server framework aiming to abstract away the complexity of managing state in realtime apps, so you can focus on actually building your app instead of confusing yourself with boilerplate.
MAF also provides a set of tools to help you easily deploy your app. So, next time you want to make a realtime app (say... a hackathon), you can just use MAF and get it online in a few minutes.
uhhhhhhhh to be continued