Show HN: CLI to order groceries via reverse-engineered REWE API (Haskell)
by wazHFsRy on 3/30/2026, 6:45:58 AM
I just had the best time learning about the REWE (German supermarket chain) API, how they use mTLS and what the workflows are. Also `mitmproxy2swagger`[1] is a great tool to create OpenAPI spec automatically.<p>And then 2026 feels like the perfect time writing Haskell. The code is handwritten, but whenever I got stuck with the build system or was just not getting the types right, I could fall back to ask AI to unblock me. It was never that smooth before.<p>Finally the best side projects are the ones you actually use and this one will be used for all my future grocery shopping.<p>[1]<a href="https://github.com/alufers/mitmproxy2swagger" rel="nofollow">https://github.com/alufers/mitmproxy2swagger</a>
https://github.com/yannick-cw/korb
Comments
by: Bewelge
Cool project, but have mixed feelings about publishing ever easier ways to access this API. They've locked down the API a while ago for a reason.<p>Also there already exists this reverse engineered project: <a href="https://github.com/ByteSizedMarius/rewerse-engineering/" rel="nofollow">https://github.com/ByteSizedMarius/rewerse-engineering/</a><p>I do have a suggestion for your app though: Have it compare your basket of goods across different markets in your region to show you the cheapest option. I'm pretty sure this possibility is actually one of the reasons they locked down the API.<p>I've used Data from REWE in the past and made a comparison between a couple of cities in Germany (I believe it was Frankfurt, cologne, Berlin, Munich and Hamburg). Hamburg was by far the most expensive, often as much as 10-20% more expensive.
4/1/2026, 9:16:07 AM
by: splike
That's funny, I've just built the same thing for Asda in the UK <a href="https://github.com/markDunne/asdabot" rel="nofollow">https://github.com/markDunne/asdabot</a><p>It can search for items, add them to the basket, picks a delivery slot and does the checkout.<p>With a little more scaffolding in markdown files, this now takes care of my weekly shopping.
4/1/2026, 9:05:17 AM
by: danielszlaski
I love the idea of a CLI for groceries. Do you have plans to support 're-order' scripts or meal-plan integration? I can imagine a workflow where a recipes.yaml file gets piped into your CLI to automatically fill the cart with everything needed for the week. Much faster than clicking through a mobile UI.
4/1/2026, 9:03:34 AM
by: son3tt
Really cool, but this is also how you end with 300 avocados and 500 L of detergent.
4/1/2026, 10:05:38 AM
by: ramonga
Funny enough I was looking at rewe network requests for a personal app that suggests weekly meals and automatically orders the ingredients for you
4/1/2026, 9:07:57 AM
by: kls0e
this feels a bit like Sandra Bullock ordering pizza in „The Net“, impressive
4/1/2026, 8:31:56 AM
by: wklm
Nice! Do you know if the Austrian billa (REWE's subsidiary) is using the same api?
4/1/2026, 7:36:11 AM
by: Dominik1001
Very cool! Thanks for sharing, I’ll try it out.<p>Haskell is indeed an interesting choice. ;)
4/1/2026, 7:46:04 AM
by: sigr_
Really cool to see things still being built in Haskell! How do you find using it compared to some of the newer languages that have more modern tooling?<p>Did you implement your own OAUTH2 flow in haskell for this?
4/1/2026, 8:53:41 AM
by: tietjens
Love this! Super cool.
4/1/2026, 8:59:21 AM
by: rvz
> Finally the best side projects are the ones you actually use and this one will be used for all my future grocery shopping.<p>Until it breaks in a few weeks.
4/1/2026, 9:35:02 AM
by: MORPHOICES
[dead]
4/1/2026, 8:46:04 AM