Since over the last couple of weeks I didn't feel like writing a long and detailed blog posts about my experience with Rust, I've decided to try something new. The plan is to run a few live coding sessions on Twitch where I will be learning Rust by building a real-world application while trying to determine if Rust is Web yet.
Here are some features I have in mind for the service:
- Searches and downloads gifs via Giphy API
- I want to use Rust to interface with HTTP APIs involving threading, resource management and maybe interfacing with a DB
- Re-sizes and re-packages selected image to be under desired size
- The idea here is to try using a native library to do the resizing and get the best quality in the desired file size range. I want to learn how to interface between Rust and native libraries and how to set up the toolchain for native code compilation and integration
- Re-encodes the packaged image so it can be downloaded or C&P base64 encoded
- Think HTML Data URI format.
- Has a nice Web UI
- Learn some Rust for Frontend/Browser, play with WASM etc. I might give up on this one and just go with something I know better since I don't really want to spend too much time building and polishing a web UI
- Deploys on AWS Lambda
- I know that Rust for Lambda is a thing. I want to see how mature it is and learn how to wire AWS Lambda and API Gateway together.
The plan is quite ambitious and since I have no streaming experience it's all probably end with a spectacular disaster, so stay tuned for some quality content.