DEV Community

Cover image for Recycling made easy: a Polish recycling assistant powered by Gemma 4

Recycling made easy: a Polish recycling assistant powered by Gemma 4

Klaudia Grzondziel on May 21, 2026

This is a submission for the Gemma 4 Challenge: Build with Gemma 4 I clearly remember this scene: my mom and I are dyeing our hair together. I'm h...
Collapse
 
francistrdev profile image
FrancisTRᴅᴇᴠ (っ◔◡◔)っ

This is very cool! It would be neat to have it as an Arduino automating this. Obviously, the downside would be speed since Gemma 4 is slow, but I guess that speed is always an issue.

Would you be interested in joining the DEVengers org? We would love to have you and I believe you have done great work so far here on DEV? If not, that's ok!

Great job and well done Klaudia :D

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you so much, Francis! Your comment means a lot. Could you tell me a bit more about the DEVengers org? Sounds intriguing!

I am planning to develop this app even after the challenge ends, so I am happy to hear any feedback and ideas for improvements 💛

Collapse
 
francistrdev profile image
FrancisTRᴅᴇᴠ (っ◔◡◔)っ • Edited

Thanks! For the org, I am assembling the greatest minds on DEV and I believe you have proven that based on your work so far!

When it comes to posting, there isn't a fix schedule and you can post anytime you want. If you are planning on posting, you will need to email me before hand so I can review before publishing. The criteria is the post is high quality and that is helpful for everyone on dev regardless of skill level.

Let me know if anything else :D

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

Wow, sounds awesome! Of course I'd be happy to join 💛

Thread Thread
 
francistrdev profile image
FrancisTRᴅᴇᴠ (っ◔◡◔)っ

Sounds awesome! It is sent to your email! Do let me know if you have any questions.

If you are planning on posting, feel free to email me (located in my portfolio that I listed on my profile).

Thanks! Hope you win this event :D

Collapse
 
learn2027 profile image
meow.hair

Dear Klaudia,

I recently read your inspiring article about building "Gdzie to wyrzucić?" and wanted to sincerely thank you for sharing your journey.

Despite describing yourself as a non-developer, you’ve built a practical web app that solves a real, everyday problem in Poland. Turning your own confusion about a hair dye bottle into a tool that helps the entire community is a beautiful example of how technology should truly serve people.

Your future plans—adding multilingual support, improving AI accuracy, and encouraging reuse—are highly commendable. Wishing you continued success, and I hope this project is just the beginning of many more impactful creations.

Thank you for being an inspiration.

Warm regards,

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Aaaaw, thank you for your comment; it's very touching 🥹💛

Collapse
 
xwero profile image
david duymelinck

The first question I have is why use an LLM?

In Belgium we have those recycling woes too. We don't have that many different containers. But plastics for us is the one that has many rules.

Because the rules are defined my first idea would be a question flow with the first question, what is it you want to throw away. If it is not clear or the package warrants further questions they will be asked.

The main problem with photos is you can manipulate them, even unintentional, to miscategorise the item.
And the argument of the coffee cup can be solved too, because I don't think those friends had the coffee mug at hand.

For the LLM did you do tests to see if Gemma followed the rules? LLM's are known to lie confidently.

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you for the questions! A decision-tree flow would work for many cases, but sometimes users have no idea where an item should go (for example, mugs shouldn't go to the glass bin even though they're made of glass; a shop receipt shouldn't go to paper even though it looks like paper; a pizza box would go to paper, but what about when it's full of grease?). People are confused. The app is meant to solve that confusion.

My friends and I went through many tests and iteratively improved the prompt (the current one is v4). I also integrated the results of the deep-search I ran with Gemini into the prompt. Since then, the test results have been correct. Of course, misclassification can still happen, and I'd love to hear feedback and keep improving the app. But if it can solve the everyday issue like the one I had with the hair dye bottle, I consider it doing its job.

Collapse
 
xwero profile image
david duymelinck

A decision-tree flow would work for many cases, but sometimes users have no idea where an item should go

The start shouldn't be the bin, but the thing that gets thrown away. That is also the base of your app.

I see no reason why you want to feed an LLM a photo and rules, while it can be done with words and a decision-tree.

Adding an LLM makes the app harder to maintain, slow and expensive. Now you are on the free tier, but once you start paying for tokens that is your budget that is getting spend for no benefit of your own.

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

The app was designed specifically for the hard cases – everyone knows where a banana peel or a plain plastic bottle goes. The cases that actually need help are blister packs, paper coffee cups, composite wrappers... and a decision tree would need 5-10 clarifying questions to handle these. One photo skips all of that.

Regarding maintenance, Polish rules change often (only this year we got the deposit system and new textile bins), so updating a Markdown file with the prompt is way easier than rewriting rule-tree code every time.

Fair point with the token costs, though. The free tier handles a lot for now, and it helped me prove to myself that the app makes sense in general. My next task is to find alternatives if scaling becomes an issue, and to check how to minimize the ~15-30 second wait time.

Thread Thread
 
xwero profile image
david duymelinck

a decision tree would need 5-10 clarifying questions to handle these.

That feels like an exaggeration. When there are containers the questions are:

  • Is the content poisonous or can it cause other problems
  • Can rinsing make the container recyclable

The rules should already have taken in account those questions. It is where the rules depend on the people to take extra steps to make the item recyclable that the follow up questions are going to pop up.

so updating a Markdown file with the prompt is way easier than rewriting rule-tree code every time

Why would you rewrite the tree every time? Sure the bigger the change in rules, the bigger the change in code. But that is equivalent to the change in Markdown.

15-30 second wait time.

That seems a long time for an answer. When an app has an icon UI users don't need to type and they get an almost instant answer.

The main thing I want to communicate is that while everything can be an LLM powered app, the biggest question is should it be an LLM powered app.

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

The main thing I want to communicate is that while everything can be an LLM powered app, the biggest question is should it be an LLM powered app.

I get you! Believe it or not, but I am not the biggest AI enthusiast. Actually, I am very often sceptical and saw many misuses. However, the design for this app assumed that the user takes a photo and gets an answer. Could I have implemented it better? Probably 😅 My job now is to improve it and make it more efficient.

Collapse
 
harjjotsinghh profile image
Harjot Singh

Nice focused build - and a great case for why a smaller model (Gemma) is the right call here, not a limitation. A recycling assistant is a narrow, well-bounded domain: the answer space is "which bin / is this recyclable locally," which a small model handles fine, runs cheaply, and can even run on-device for privacy/offline. Reaching for a giant frontier model here would be overkill burning cost for no quality gain. Right-sized model for a scoped task is exactly the discipline more people should apply.

The localization angle is the genuinely hard part you nailed - recycling rules are hyper-local (what's recyclable in one Polish municipality differs from the next), so the value isn't the model's general knowledge, it's grounding it in the correct local rules. That ground-in-authoritative-local-data step is what makes it actually right rather than plausibly-right. Same principle I lean on in Moonshift (a multi-agent pipeline that ships a prompt to a deployed SaaS) - scoped model + grounded data beats big-model-guessing, and keeps cost down (~$3 a build). Lovely practical project with real civic value. Is the local-rules grounding from a structured dataset, or did you have to assemble the municipality rules yourself? That data-gathering is usually the unglamorous bulk of the work.

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you for the comment! 💛

That data-gathering is usually the unglamorous bulk of the work.

Yes, this was one of the hardest parts, but AI helped as well. I ran Gemini's deep search on government sites, local rules, and Polish recycling experts, which gave me a detailed report on Poland's recycling rules. Then I fed it to Gemma, and after that the test results improved drastically. All the real-world tests that failed previously passed after the deep-search and skill update.

Collapse
 
rachef_khoulod_a166c693fa_13 profile image
AlToolKit

This is such a cool use of technology for real-world impact! Gyma is a great example of how a simple app idea can actually change people's daily habits around waste sorting.
What I find most impressive is that waste management is usually seen as a "boring" problem, but turning it into an intuitive app experience makes it accessible to everyone — not just eco-enthusiasts.
Would love to see something like this expand beyond Poland. The world needs more apps that make doing the right thing easier than doing nothing. 🌍♻️

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you for your kind words 💛 This was exactly the issue – many people don't have the time, energy, or wish to follow recycling rules, and the rules change all the time (just this year, Poland introduced new rules for sorting textiles and a deposit system for plastic bottles).

The app is meant to help people with everyday issues and take away some of the mental load.

Would love to see something like this expand beyond Poland.

This is my wish, too! 🥹 For now, I do what I can to improve things locally. That's why I want to develop this app to make it more accessible to people and promote it, even after the challenge ends.

Collapse
 
rachef_khoulod_a166c693fa_13 profile image
AlToolKit

Yes, I wish you the best of luck. As I understand it, you have experience in development and coding. Actually, I want to learn, but I haven't found anyone to guide me or where to start. I hope you'll read my articles to support me and offer advice.

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

Actually, I am a Technical Writer, not a Developer, and this is the first app that I vibe-coded 😅 I'll be happy to read your articles, though!

Thread Thread
 
rachef_khoulod_a166c693fa_13 profile image
AlToolKit

Oh, okay, that's fine. So please read the articles on my page and invite your friends to read them too, and give me your feedback and advice. Actually, I'm a complete beginner. May I know where or what you do as a technical writer?

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

In short, as a Technical Writer, I make sure that the project is well-described. This includes creating a proper documentation strategy, documentation structure and guidelines, reviewing documentation PRs, looking for gaps in docs, addressing them, writing and testing instructions, working closely with engineers to understand the product, and being the user's advocate when something is unclear or hard to use.

Collapse
 
itsugo profile image
Aryan Choudhary

I'm just blown away by this project - a Polish recycling assistant web app that can identify what bin to put things in just by taking a photo? It's almost like having a tiny little recycling assistant by your side, guiding you through all the confusing packaging and hard-to-sort items. I'm curious to see how it handles the tricky cases, like blister packs and composite wrappers - Klaudia, you must have had to get creative to make it work! Amazing work!!!

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

It's almost like having a tiny little recycling assistant by your side, guiding you through all the confusing packaging and hard-to-sort items.

Thank you so much! This was exactly the goal 😊

Collapse
 
varsha_ojha_5b45cb023937b profile image
Varsha Ojha

This is a really practical use case for AI. I like that it solves a small everyday confusion instead of trying to be another generic assistant. Recycling rules can be surprisingly unclear, especially when items are contaminated or made of mixed materials. The photo based flow also makes sense here because most people don’t want to read long rules. They just want to know where the item goes.

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

The photo based flow also makes sense here because most people don’t want to read long rules. They just want to know where the item goes.

Exactly! Of course, some people are deeply engaged, read expert blogs, and are always up-to-date. But most people just follow the most obvious choice, which is not always the correct one. The app's goal is to help with that 🙂

Collapse
 
varsha_ojha_5b45cb023937b profile image
Varsha Ojha

Exactly. Most people only look up recycling rules when they’re already unsure. So making the right choice easier in that moment is the real value. Simple, practical, and much more useful than another generic AI assistant.

Collapse
 
embernoglow profile image
EmberNoGlow

good job!

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you 💛

Collapse
 
lloydjackmanukpl profile image
Lloyd-Jackman-UKPL

So, I am an Englishman living in the Polish countryside where there is the joke I am sure you are aware of, in that in the Polish countryside they have been sorting their waste for years:

  • what you can burn during the day
  • what you have to burn at night :-D

Obviously, I am joking and am keen on recycling, taking good advantage of this, but my local council (Gmina Kościerzyna) provides this app called Eco Harmonogram which provides details of when what is being collected and how to dispose of different items. It even has an English interface, though the items to be thrown away in have to be searched for with their Polish names.

The feature you've developed is interesting though, but feels like it either needs to integrate with local collection schedules to complete it as a more rounded and useful app, or you should be taking this feature to developers like the app I mentioned and offering to create this feature in their app.

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Ahaha, I totally get you! 😄 I have family in the countryside, and I've seen many people still sorting their waste the way you described 😄

Right now, I am basing my prompt on the general Polish national guidelines. Including local nuances crossed my mind, but I decided it would be overkill for the project in this phase of development. I have it on the roadmap, though 🙂

Collapse
 
lloydjackmanukpl profile image
Lloyd-Jackman-UKPL • Edited

So you're not going to introduce a "night mode" feature that both darkens the screen and also recommends burning everything 😉

Thread Thread
 
klaudiagrz profile image
Klaudia Grzondziel

Collapse
 
denerfernandes profile image
Dener Fernandes

Cześć,very nice app, i love this thinks, mybe you can try to take some sponsors from government or private companies. I live in Poland and i have problem to find place to discart motorcycle oleo its good think to put this capability XD

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Cześć! Thank you for the feedback! 💚 I was thinking of adding some tips saying that some items could be reused on sites like Allegro, Vinted, or even local charity points. I think it's a feature worth adding:) Regarding sponsors... maybe. I feel this could be the proper direction; however, I'd need to provide some improvements to the app first.

Collapse
 
hemapriya_kanagala profile image
Hemapriya Kanagala

Klaudia, this is super cool. I like that the idea came from such a normal everyday moment, because a lot of us have had the same confusion. The app feels practical and not just “AI for the sake of AI.” Nice build 👏

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you so much for your kind words 💛

The app feels practical and not just “AI for the sake of AI.”

Yes, this was exactly the goal 😊

Collapse
 
tahosin profile image
S M Tahosin

This is a wonderfully practical project! Recycling rules can be incredibly confusing, especially with local variations. Using Gemma 4 to solve a real, everyday problem like waste sorting is exactly the kind of impactful AI we need more of. Excellent submission!

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you for your kind words 💛

Collapse
 
klem42 profile image
Kirill

The most interesting part of projects like this is that they quietly turn AI into infrastructure. Nobody opens this app thinking: "ah yes, today I will experience frontier intelligence".

They think: "please just tell me where the stupid coffee cup goes."

That's probably where a lot of AI products are heading. From "look at the magic" to "remove one tiny annoying decision from my day".

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Yes – I think we're slowly leaving the phase where we just observed AI with wide eyes, either excited or scared by what it could do, and entering the phase where we actually use it to improve our lives. Interesting observation!

Collapse
 
stephen_sebastian_c85ea2b profile image
Stephen Sebastian

This is a really clever use of Gemma 4's lightweight footprint. Running a local assistant for something as region‑specific as Polish recycling rules is exactly the kind of practical, private, and cost‑effective application that makes open‑weight models exciting.

I'm curious: did you run into any challenges with the language model handling the fine‑grained waste categories (e.g., differentiating multi‑layer packaging)? Also, how does the assistant stay up‑to‑date if local regulations change? Would love to hear more about your prompt design or fine‑tuning approach.

Great work bringing Gemma 4 to a real‑world civic problem. 🙌

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel • Edited

Thank you for your kind words 💛

I'm curious: did you run into any challenges with the language model handling the fine‑grained waste categories (e.g., differentiating multi‑layer packaging)?

Multi-layer packaging was one of the hardest things. Pill blisters were the trickiest case – photographed from the foil side, they look like pure aluminum foil to the model. I added explicit rules in the prompt: "look for irregular bumps, perforations, thin curved shapes."

In the case of tea sachets, the first version of the prompt assumed the contents inside and advised bio waste. I had to add a rule telling the model not to assume what's inside the package.

In the end, after many tests, I ended up with v4 of the prompt that was successful even in hard cases. It now shows the correct classification + additional notes. For example, in the case of the tea sachet, it now correctly tells to throw it to plastic + a tip that the tea leaves should go separately to bio waste.

A known limitation is that for multi-item photos, the app sometimes refuses to analyze the photo. This happened with a photo of a layered matcha cake with fruit, on a plate with forks on the sides. The app handles it gracefully by asking the user to take another photo.

Also, how does the assistant stay up‑to‑date if local regulations change?

For now, I use Gemini's deep-search to dig up current rules from Polish government sources and experts, and I update the prompt manually. For the future, I'm thinking of adding some lightweight automation – like a monthly cron job that runs a deep-search query and lets me know if anything changed. But I still need to research this.

Collapse
 
allan_kipruto_7f71bb911c6 profile image
Allan Kipruto

Really nice applied use of Gemma 4 — especially turning it into a practical assistant for everyday decision-making like recycling. This is exactly the kind of “AI in the real world” use case that feels immediately useful.

What I find interesting here is how you’ve framed behavior change (helping people make correct recycling decisions) rather than just information retrieval.

I’ve been exploring similar “applied AI for daily life” ideas in education through an offline-first system (LocalMind), and one challenge I keep running into is how to keep AI guidance consistent while still being simple enough for non-technical users.

Curious — did you fine-tune prompts around specific recycling rules, or rely mostly on structured prompting with Gemma 4?

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

No fine-tuning – everything is structured prompting with Gemma 4. The recycling rules live in a ~200-line system prompt that I kept improving till the current v4. I based it on real-world tests, a thorough search of Polish government sources, and expert guidance. Fine-tuning could probably help with the hardest edge cases, but for such a small project, it could be just overkill. In this case, prompt engineering felt like the right level of effort 🙂

The full prompt is on GitHub if you want to take a look: github.com/klaudiagrz/recycling-ap...

Collapse
 
neithergalax profile image
neither galax

This is inspiring, thanks for sharing. I've done some data analysis work related to recycling and global warming, but I haven't built the app, and I was just thinking about this area for my next possible project.

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you! You should definitely go for it! Projects where you can share your learnings and use them for some greater purpose are very fulfilling 💚 Call me naive, but I do believe that we have the power to turn our skills into tools that make the world a better place 🌍

Collapse
 
hadil profile image
Hadil Ben Abdallah

This is really cool! Great job, Klaudia 👏🏻

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you! :)

Collapse
 
aasteriskz profile image
Adarsh

This is a fantastic project! Using AI to simplify recycling and make it more accessible is a great use case for Gemma 4. The implementation looks very polished. Great job!

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you for your kind words 💛

Collapse
 
shogun444 profile image
shogun 444

Really liked this one. The Poland-specific focus, honest limitations, and real-world usefulness made it feel like an actual product instead of just another AI demo. Great work 👏

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

Thank you 💚

Collapse
 
bbkr profile image
Paweł bbkr Pabian • Edited

"Sorting waste in Poland has improved a lot over the last few years" - No. It got incredibly, utterly stupid. Your app is the living proof.

Garbage should be sorted by recycling facilities. With advanced machines and algorithms to recognize and organize different materials. Not by 38M people trained like a dogs and forced to sacrifice space in their apartments for 5 different trash cans.

We should stop this nonsense, not lean into it by using apps to sort trash (it even sounds riddiculously distopian)...

Collapse
 
klaudiagrz profile image
Klaudia Grzondziel

I didn't invent Poland's recycling rules, but they exist – and software's job is to help people deal with the problems they face every day. That's what the app does.

You might be right that the system itself could be improved. But until it is, people still need to sort their waste, and they're often confused. The app helps with that.