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

Share this project:

Updates

Submission history