this post was submitted on 06 Aug 2023
1453 points (99.1% liked)
Announcements
23319 readers
1 users here now
Official announcements from the Lemmy project. Subscribe to this community or add it to your RSS reader in order to be notified about new releases and important updates.
You can also find major news on join-lemmy.org
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Why did you choose Rust for the backend and Inferno for the frontend?
P.S. Thank you for your work!
Performance.
For web services, check out https://www.techempower.com/benchmarks/
For front-end, check out https://github.com/krausest/js-framework-benchmark
At the time of making lemmy, actix (for back end), and inferno, were two of the highest-performing in their areas.
Thank you for your reply!
I wonder how much experience you had with those technologies beforehand.
Edit: found the answers about Rust here and here. Impressive! Would it be reasonable to assume that y'all didn't have much prior experience with Inferno as well as you appear to be very quick and eager learners?
As someone who's made many contributions I wonder about this very often.
Piggybacking off of the question I'm commenting on: what influenced your decision to use a rust WASM framework for the rewrite instead of something comparable that uses more well known web technologies, like next or sveltkit?
Rust is just a much more enjoyable language to work with than javascript / typescript, and its been voted developers favorite language on stackoverflow for like 6+ years for good reason. When I made jerboa (in kotlin), it made me realize how awful it is working in javascript, even compared to a JVM based language.
I'd been waiting for a long time for a good web framework in rust, so when sycamore / perseus / leptos came up, I made a few small sample projects, and loved working with them.
Also leptos's first class support for 4 different isomorphic/SSR modes, and its performance, made me choose that. Its essentially sveltkit, but for Rust.
After learning enough Rust to do some things I definitely agree with you regarding it being an awesome language to work with. My main concern is with ease to contribute by non-maintainers as shown in the other reply to my comment, and it's not the first time I've seen the sentiment. However, maybe having lemmy's official web UI be in leptos will both help to popularize the framework and encourage frontend devs to become proficient in a language other than JavaScript.
For sure. The leptos devs and community have already been helping with a ton of issues I've been having with some smaller leptos projects I've been using to teach myself. I'm really excited about its potential, and hope it grows.
Would definitely love to see more web-platform friendly frontend tech used, like Svelte. It would also make contributing to the frontend much easier imo.