···33> This file aims to explain my choices. Not that I need to explain myself
44> but hey, we all feel accountable for our stupid actions sometimes.
5566-## The `rsffi` Rust NIF library
66+## The 25 branch
7788-I am just very attached to the love of my life Rust. And I think
99-the Rust way of doing things might come in handy somewhere down the road.
1010-Plus, on JavaScript, FFI'ing is fairly easy, I almost write more JS/TS in my
1111-life than Rust and Gleam...
1212-Erlang on the other hand is kind of a scary thing. Rust is comfy! 🥰
88+Few days after the Rust 2024 edition release, having new experiences with gleam Lustre and a really messy repository...
99+Three great reasons for a clean slate.
1010+Git branch 25 is yet another restart for me writing on Lumina. With past experiences and a clear vision, `master` does a good job, so this one will do even better.
13111414-### Markdown to HTML rendering in Rust instead of natively in Gleam
1212+### Choices made
15131616-I think it's a good idea to have a Rust NIF for rendering markdown to HTML.
1717-I've had it work with `kirala` (Gleam), but I think it's a good idea to have
1818-the kind of control over it that I had in the pure Rust version.
1414+- **Gleam** as the main language on frontend.
1515+ Not having multiple language branches about this.
1616+ - **TailwindCSS** as the main CSS framework.
1717+ - **Lustre** for building the UI.
1818+- **Rust** as the main language on backend.
1919+ - More specifically, the `axum` library instead of `actix-web`.
2020+ - Rust 2024 edition from the start.
2121+- **PostgreSQL** as the main database. **SQLite** for testing.
2222+- **WebSockets** for real-time communication between the client and the server.
19232024## The `gleam` language
2125