{"id":34519572,"url":"https://github.com/techboy-coder/bernhack25","last_synced_at":"2026-05-24T23:03:27.237Z","repository":{"id":311282960,"uuid":"1042904587","full_name":"techboy-coder/bernhack25","owner":"techboy-coder","description":null,"archived":false,"fork":false,"pushed_at":"2025-08-23T23:09:11.000Z","size":7020,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-23T23:43:59.469Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Svelte","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/techboy-coder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-22T19:18:28.000Z","updated_at":"2025-08-23T23:09:14.000Z","dependencies_parsed_at":"2025-08-23T23:44:39.543Z","dependency_job_id":"37bc07c7-acf7-47b5-adc1-1ca17e0654f3","html_url":"https://github.com/techboy-coder/bernhack25","commit_stats":null,"previous_names":["techboy-coder/bernhack25"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/techboy-coder/bernhack25","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techboy-coder%2Fbernhack25","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techboy-coder%2Fbernhack25/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techboy-coder%2Fbernhack25/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techboy-coder%2Fbernhack25/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/techboy-coder","download_url":"https://codeload.github.com/techboy-coder/bernhack25/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techboy-coder%2Fbernhack25/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33453557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-24T19:21:36.376Z","status":"ssl_error","status_checked_at":"2026-05-24T19:21:10.562Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-12-24T04:36:12.181Z","updated_at":"2026-05-24T23:03:27.232Z","avatar_url":"https://github.com/techboy-coder.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SpendCast 💰🎙️\n\n**Bring your finances to life with AI-powered conversations**\n\n![Home](./images/home.png)\n\nBuilt during [BärnHäckt 2025](https://www.bernhackt.ch) - A hackathon project that transforms personal finance data into engaging, conversational experiences.\n\n## 🏆 Challenge: PostFinance SpendCast\n\nSpendCast is an intelligent, multimodal financial assistant that uses generative AI, knowledge graphs, and AI agents to provide personalized, natural language responses about your spending habits. Think Spotify Wrapped, but for your finances.\n\n## ✨ Features\n\n- 🗣️ **Natural Language Queries**: Ask questions like \"How much did I spend on unhealthy food last month?\"\n- 🎵 **Text-to-Speech**: Get responses as spoken audio using Chrome TTS\n- 🎤 **Speech-to-Text**: Voice input support via Chrome STT\n- 📊 **Animated Visualizations**: Beautiful slide presentations using Animotion\n- 🧠 **AI Agent Orchestra**: Intelligent agents coordinate data access and analysis\n- 🕸️ **Knowledge Graph Integration**: Connects personal data with external sources (Open Food Facts, Wikidata)\n- 🎯 **MCP Protocol**: Model Context Protocol for seamless data source integration\n- 📱 **Responsive UI**: Modern interface built with ShadCN components and Tailwind CSS\n\n## 🛠️ Tech Stack\n\n### Frontend\n\n- **SvelteKit** - Full-stack framework\n- **ShadCN/UI** - Component library\n- **Tailwind CSS** - Utility-first styling\n- **Animotion** - Animated presentation slides\n- **Chrome Web APIs** - TTS/STT integration\n\n### Backend\n\n- **Hono** - Lightweight web framework\n- **LLM Query Layer** - Custom data querying system\n- **AI Agents** - Orchestrated intelligence system\n- **MCP (Model Context Protocol)** - Data source dumping and querying\n\n### Architecture\n\n- **Microservices** - Distributed service architecture\n- **Knowledge Graphs** - Structured data relationships\n\n### Planned/WIP Features\n\n- **OCR System** - Document text extraction (unfinished)\n- **External APIs** - Open Food Facts, Wikidata integration\n\n## 🏗️ Architecture Overview\n\n```\n┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐\n│   SvelteKit     │    │   Hono API      │    │   LLM Query     │\n│   Frontend      │◄──►│   Gateway       │◄──►│   Layer         │\n│                 │    │                 │    │                 │\n└─────────────────┘    └─────────────────┘    └─────────────────┘\n         │                       │                       │\n         ▼                       ▼                       ▼\n┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐\n│   Chrome APIs   │    │   AI Agents     │    │  Knowledge      │\n│   (TTS/STT)     │    │   Orchestrator  │    │  Graph          │\n└─────────────────┘    └─────────────────┘    └─────────────────┘\n```\n\n## 💬 Usage Examples\n\n[Youtube Demo](https://www.youtube.com/watch?v=8hJrAomTCUc)\n\n### Voice Interactions\n\n- \"How much did I spend on groceries this month?\"\n- \"What's my biggest spending category?\"\n- \"Show me my unhealthy food expenses as a podcast\"\n\n### Response Formats\n\n- 🎵 **Audio**: Spoken responses and podcast-style summaries\n- 📊 **Visual**: Animated charts and infographics\n- 📱 **Interactive**: Chat, speak and interact with the AI bot\n\n_Built with ❤️ during BärnHäckt 2025_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechboy-coder%2Fbernhack25","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechboy-coder%2Fbernhack25","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechboy-coder%2Fbernhack25/lists"}