I'm pleased to announce the latest release of EndBASIC, 0.7. You can read more about this release in:
- The announcement with details on the new features: EndBASIC 0.7: Hello, cloud!.
- The project's homepage: EndBASIC.
- The project's GitHub site: endbasic/endbasic.
I've previously posted about this side-project of mine, which I've been working on since the beginning of the pandemic, in this forum before---but here goes some background on why this may be of interest to the Rust community.
EndBASIC is, obviously, a BASIC interpreter which has now gained some DOS-like features for additional fun.The interpreter is retro-looking and focuses on simplicity to serve as a tool to teach the fundamentals of programming and computing. (Whether that's working as intended or not is still to be seen, but my kids have enjoyed it so far.)
EndBASIC is fully written in Rust and I've been working on this mostly as an excuse to continue to learn Rust. But here is where things got interesting last year: thanks to Rust, I was able to deploy this to the web with ease, which I think is a big selling point.
Anyhow. The biggest feature behind the 0.7 release, which has kept me busy for about 4 months now, is a new cloud service for file sharing. And the cool thing is that the service is also fully written in Rust. The service runs on Azure Functions for "serverless provisioning" and talks to a PostgreSQL database, also on Azure, via the sqlx crate. While the current implementation isn't "great" by any means, Rust gives me the confidence that I've got most bases covered and has exposed the rough corner cases I still have to deal with.
All in all, reqwest, serde, sqlx and warp have all been a pleasure to work with and have made this a possibility without major difficulties (even when not using any SDK for the cloud). Kudos to the developers of these crates!
Please take a look and let me know what you think