Trying out deployment via Railway and Leapcell.
Verdict: Railway better for me. 1) closer datacentre, quicker app. 2)nicer interface and not garish appearance. That said if I was in the US, leapcell was easy enough to set up and get going so I'd give it a go for a while.
Railway: EU deployed 30-60ms for me (I'm europe) https://wordfind-production.up.railway.app/
Leapcell: slower e.g. 150-200ms US East or Tokyo servers. https://wordfind-leshec290-i6w2gi13.leapcell.dev/
Web app: Crossword / scrabble word finder learning webproject
- Demo mode generates random tiles: then finds largest, highest score and valid words
- Search for words in a dictionary of 300k words
- Play a game to find words from random letters/tiles
- Find anagrams of words
Not 100% finished but functions enough as intended
- Wordfinder (https://wordfinder.shuttleapp.rs)
- Favicon. What is the right way to do this?
- Experiment with loops in templates
- Figure how to deploy with shuttle. Edit Shuttle closed down.
- Make some notes for later
- error handling and testing etc
- add an about and contact for new words
- add a high score leaderboard for the games
- add a pop over if you click on a word to show meaning of word, there is a nice dictionary API for that
- Web server: Rust with Axum (https://github.com/tokio-rs/axum)
- HTML templating engine: Tera (https://docs.rs/tera/latest/tera)
- Basic styling: Missing.style (https://missing.style/)
- HTMX (https://htmx.org/)
- Tera (https://keats.github.io/tera/docs/#getting-started)
- Hotreloading: Cargo-watch (https://github.com/watchexec/cargo-watch)
- Hotreloading: Tower-livereload (https://github.com/leotaku/tower-livereload) - disabled
- ~~Deployed via shuttle.rs on free tier (https://www.shuttle.rs/). Edit: closed/deprecated.
- Big Sky Software (https://github.com/bigskysoftware/contact-app)
- CodeScope Youtuber for inspiring me to have a go deploying a web app with his example of using HTMX and Rust.
- Source code (https://gitlab.com/codescope-reference/rustmx)
- This site is based on Guardian coding challenges (https://github.com/guardian/coding-exercises)
- Note uses text file with approx 300k words
- Not an offical set of Scrabble words or authority on valids words
If you want to mess around with it...
- Terminal
git clone https://github.com/leshec/wordfind.git - Need Rust installed, comes with Cargo package manager, from terminal
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Terminal
cargo build - Site runs locally on your machine e.g. via
127.0.0.1:8080
