Inspiration
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Cham
What it does
Cham is a tiny backend engine for people who just learned what an API is. You write routes as plain steps and get a JSON API, file storage and a static site from one binary. Make a typo and Cham tells you the line and the word you probably meant.
when someone posts /orders:
need name, phone, item
time = now
order = save name, phone, item, time to orders
answer "Thanks, " + name, order
Demo apps
We tested it on a shawarma stand's order page with a kitchen queue and a lab booking grid that refuses double bookings.
How we built it
Rust, tiny_http, serde_json; frontends in vanilla HTML/CSS/JS. The parser is a line-by-line match with a Levenshtein "did you mean" for typos. Errors come in English, Ukrainian or Russian.
Challenges
Keeping the language small: each keyword had to earn its place in both demos or stay out.
What's next
update and delete steps, Polish messages, a --watch flag that reloads the script on save.
Live demo: https://cham-playground.yasenvarf.workers.dev/ Repo: https://github.com/yava-code/cham
Built With
- css3
- html5
- javascript
- rust
- serde-json
- tiny-http

Log in or sign up for Devpost to join the conversation.