My solutions for the Shuttle Christmas Code Hunt 2023.
May include messy code, but feel free to use code in this repo.
Some code may serve as examples for how to do something specific in Rust. For future reference, I summarized the challenges. Every challenge uses rocket and serde.
File | Topics | Crates |
---|---|---|
day_negative_1.rs | Error status codes | |
day1.rs | Dynamic path parameters | |
day4.rs | JSON Serialisation | |
day5.rs | Splitting and offsetting strings | |
day6.rs | Counting substrings | |
day7.rs | Cookies, HashMaps, base64 | base64 |
day8.rs | Http requests | reqwest |
day11.rs | Serving static files, accepting files, parsing images | image |
day12.rs | ULIDs, UUIDs, DateTime operations | chrono, ulid, uuid |
day13.rs | SQL Queries, SQL Groups, SQL Batch inserts | sqlx |
day14.rs | HTML Templates | rocket_dyn_templates |
day15.rs | Regex, Match Emojis, string matching | regex |
day18.rs | SQL Batch inserts, SQL joins, SQL Groups | sqlx |
day19.rs | Websocket, Broadcast, Atomic, RwLock | rocket_ws, tokio |
day20.rs | Unpacking tars, finding git commits, accepting files, size limits, finding git file changes | git2, tempfile, tar |
day21.rs | s2 cells, coordinate conversion, getting a coordinate's country | s2, isocountry, country_boundaries |
day22.rs | Path-finding (breadth-first-search/bfs), Graphs | pathfinding |
tiebreaker.rs | JSON Web Encryption (JWE) | josekit, reqwest |
git clone git@github.com:yuri-becker/shuttle-cch23.git
cd shuttle-cch23
cargo install cargo-shuttle cargo-watch
cargo watch -x "shuttle run"