Inspiration
Traditional budgeting apps require users to hand over their most sensitive financial credentials to third-party aggregators like Plaid. We wanted to build a "Zero-Cloud" alternative that respects user privacy. By leveraging the power of on-device AI, we created a tool that "listens" to bank notifications and categorizes transactions in real-time, keeping every byte of financial data strictly on the user's hardware.
What it does
Neme Budget is a privacy-first financial manager that uses a native Android NotificationListenerService to scrape incoming bank alerts. A local Small Language Model (SLM) then parses that text into structured data, updating a secure, encrypted ledger. Users get a "Safe to Spend" metric and visual analytics without ever connecting their bank account to the internet.
How we built it
- The Brain: We integrated the Qwen3 0.6B (q4f16) model using the MLC LLM framework for on-device inference. This allows for high-quality JSON extraction without an API or network connection.
- The Vault: We used encrypted on-device storage in SQLCipher, managed through a Room database. We utilized the Android KeyStore to manage 256-bit AES keys within the device's hardware-secure enclave.
- The Interface: Built entirely with Kotlin and Jetpack Compose, focusing on a reactive, dark-mode-first UI that provides 60FPS performance even during background AI processing.
Challenges we ran into
The biggest hurdle was the "LLM Compilation Wall." Debugging the MLC LLM build pipeline to ensure the Qwen3 model could leverage the device's GPU (Adreno/Mali) instead of slow CPU fallback took significant effort. We also had to refine system prompts to handle inconsistent notification formats from different banking apps to ensure 100% valid JSON output.
Accomplishments that we're proud of
- 100% Data Sovereignty: We proved that high-utility fintech can exist with zero internet permissions.
- Hardware-Backed Security: Successfully implemented a security layer that keeps data inaccessible even on rooted devices.
What we learned
We gained deep experience in mobile AI optimization, specifically the trade-offs between model parameter count and inference speed. We also learned how to manage complex lifecycle states when combining background services with encrypted local storage.
What's next for Neme Budget
- Support for budgets by app: Granular controls to set limits for specific services (e.g., DoorDash vs. Amazon).
- Basic data analytics: Local-first "Spend Velocity" charts and trend analysis.
- Hybrid Processing: A deterministic Regex engine to complement the LLM for recurring, high-frequency merchants.
Built With
- jetpack-compose
- kotlin
- mlc-llm
- qwen3
- sqlite
Log in or sign up for Devpost to join the conversation.