Inspiration
In Japan, every city and ward sets its own strict garbage sorting rules (分別 - bunbetsu), usually published only in Japanese. Small towns and rural areas often have no English guide at all, and a small mistake means your trash isn't collected, causes friction with neighbors, or creates fire hazards (like improper battery disposal).
I built Wakeru (分ける — "to sort/separate") to solve this daily challenge for foreign residents in Japan.
What it does
Wakeru reads your own city's rules (paste the text or upload a municipal PDF) and explains them clearly in your native language, then helps you set a collection reminder.
| Feature | What it does |
|---|---|
| 🤖 AI rule explainer | Upload a city PDF or paste text. Get a plain-language explanation, a practical waste-reduction tip, and a safety note in your language. |
| 🌐 Page translation | The entire interface dynamically translates into 14 languages (English, Japanese, Hindi, Vietnamese, Chinese, Korean, Tagalog, Indonesian, etc.). |
| 🔔 Collection reminders | Download an .ics calendar file (works with Google, Apple, and Outlook with no sign-in required) or sync directly with Google Calendar locally. |
| 🔎 Quick item lookup | Instant sorting guidance for ~35 common household items. |
| 🏙️ City guides | Sourced, cited local details for Shinjuku (Tokyo), Osaka, and Fukuoka. |
| 🧪 Sample rules | Built-in Japanese and English municipal sample notices for instant testing. |
How I built it
- Frontend & Document Processing: Built with Python, Streamlit, and pypdf for client-side PDF text extraction, plus
ThreadPoolExecutorand@st.cache_datafor fast concurrent UI translation. - AI Inference on Nebius Token Factory: All LLM calls run through Nebius Token Factory using the OpenAI-compatible SDK (
https://api.tokenfactory.nebius.com/v1):- Core Rule Explainer: Powered by NVIDIA Nemotron (
nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B), instructed with strict grounding so it never invents details outside the source text. - UI Localization Engine: Powered by
Qwen/Qwen3-30B-A3B-Instruct-2507on Nebius Token Factory for batch JSON translation across 14 languages.
- Core Rule Explainer: Powered by NVIDIA Nemotron (
- Calendar Engine: Custom RFC-compliant
VEVENT.icsfile builder alongside Google Calendar OAuth2 API integration.
Challenges I ran into
- Strict Grounding vs. Hallucination: Municipal fines, bag colors (like Fukuoka's paid colored bags vs. Tokyo's clear bags), and collection days vary wildly by ward. I engineered the Nemotron system prompt to strictly summarize only what is present in the user's uploaded notice and explicitly flag uncertainties.
- Fast Multilingual UI Rendering: Translating dozens of UI strings on the fly can cause lag, so I implemented concurrent batch requests with
ThreadPoolExecutorand Streamlit caching (@st.cache_data).
What I learned & Project History
Wakeru started prior to the hackathon as a simple static lookup script with no AI. During the hackathon submission period, I transformed it by integrating NVIDIA Nemotron on Nebius Token Factory, adding PDF/text rule explanation, 14-language full-page translation, .ics and Google Calendar reminders, sourced city guides, and deploying it publicly on Streamlit Community Cloud.
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Wakeru (分ける) — AI Japan Waste Sorting Assistant
- Adding OCR support using a vision-language model on Nebius Token Factory so residents can snap photos of scanned municipal garbage posters or physical items directly.
- Expanding the verified City Guide database beyond Shinjuku, Osaka, and Fukuoka to cover more Japanese prefectures and university towns.
Built With
- nebius-token-factory
- nvidia-nemotron
- openai
- pypdf
- python
- qwen
- streamlit