{"id":50349598,"url":"https://github.com/yareva/routine-ai-app","last_synced_at":"2026-05-29T20:30:49.824Z","repository":{"id":347646857,"uuid":"1183781467","full_name":"yareva/routine-ai-app","owner":"yareva","description":"Voice-first AI routine planner — speak your day, get a clean schedule back. Built for the NVIDIA x Vercel Agents for Impact Hackathon.","archived":false,"fork":false,"pushed_at":"2026-03-28T19:33:37.000Z","size":115,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-28T21:22:59.016Z","etag":null,"topics":["agents-for-impact","ai","ai-voice-agent","hackathon","nemotron-ai","nvidia","productivity","routine","speech-recognition","v0-dev","vercel"],"latest_commit_sha":null,"homepage":"https://v0-routine-ai-app.vercel.app","language":"TypeScript","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/yareva.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-17T00:16:06.000Z","updated_at":"2026-03-28T19:33:40.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/yareva/routine-ai-app","commit_stats":null,"previous_names":["yareva/routine-ai-app"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/yareva/routine-ai-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yareva%2Froutine-ai-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yareva%2Froutine-ai-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yareva%2Froutine-ai-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yareva%2Froutine-ai-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yareva","download_url":"https://codeload.github.com/yareva/routine-ai-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yareva%2Froutine-ai-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33670211,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-29T02:00:06.066Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["agents-for-impact","ai","ai-voice-agent","hackathon","nemotron-ai","nvidia","productivity","routine","speech-recognition","v0-dev","vercel"],"created_at":"2026-05-29T20:30:49.558Z","updated_at":"2026-05-29T20:30:49.812Z","avatar_url":"https://github.com/yareva.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🧠 Routine AI\n\n\u003e **Built in 2 hours at Agents for Impact Hackathon · March 16, 2026**\n\u003e Powered by NVIDIA\n\n**[Live Demo →](https://v0-routine-ai-app.vercel.app/)**\n\n---\n\n## What It Does\n\nJust rant about your day — Routine AI turns it into a clean, time-blocked schedule.\n\nNo forms, no dropdowns, no structure required. You dump whatever's on your plate and the app figures out the rest:\n\n\u003e *\"I have an exam tomorrow and two homework assignments due at midnight, but I also want to do yoga at 6 and I have class at 2:30 and a meeting at 10:30 AM\"*\n\nThat's it. Hit the button and get back a full structured day.\n\n---\n\n## Features\n\n- 🎙️ **Voice-first input** — tap the mic, rant about your day, get a schedule back\n- ⌨️ **Text fallback** — prefer typing? tap \"or type\" for a minimal inline textarea\n- 📷 **Scan mode** — photograph a to-do list, supplement label, or anything printed; OCR reads it and builds a routine from it\n- 🕐 **Time-of-day context** — morning / afternoon / night toggle so the schedule fits where you're at\n- 📋 **Animated schedule output** — time-block cards with color-coded tags (focus, urgent, break, meeting, admin, personal)\n- 📊 **Summary stats** — tasks, focus hours, and breaks at a glance\n- 🗂️ **History** — past routines saved locally so you can reference what you built before\n\n---\n\n## Tech Stack\n\n| Layer | Tool |\n|---|---|\n| Frontend | React + Vite |\n| Deployment | Vercel |\n| AI Scheduling | NVIDIA Nemotron (`nvidia/llama-3.1-nemotron-ultra-253b-v1`) |\n| Speech-to-Text | NVIDIA ASR API |\n| Image OCR | NVIDIA Infer API |\n\nAll APIs are NVIDIA — called via `https://integrate.api.nvidia.com/v1`.\n\n---\n\n## Getting Started\n\n### 1. Clone the repo\n\n```bash\ngit clone https://github.com/your-username/routine-ai.git\ncd routine-ai\n```\n\n### 2. Install dependencies\n\n```bash\nnpm install\n```\n\n### 3. Add your API key\n\nCreate a `.env` file in the root:\n\n```env\nVITE_NVIDIA_API_KEY=your_nvidia_api_key_here\n```\n\n### 4. Run locally\n\n```bash\nnpm run dev\n```\n\n---\n\n## How It Works\n\n### Voice Mode\n1. Tap the mic → speak freely about your day\n2. Audio sent as base64 to the NVIDIA ASR (speech-to-text) endpoint\n3. Transcript appears below the mic as a floating caption\n4. \"Make my routine\" sends it to Nemotron\n\n### Scan Mode\n1. Tap the camera icon → file picker opens (camera on mobile)\n2. Image sent as base64 to the NVIDIA OCR endpoint\n3. Extracted text is passed to Nemotron with a scan-specific prompt\n4. A checkmark preview replaces the camera icon once processed\n\n### Text Mode\nTap \"or type\" → inline text area expands → type your brain dump → submit\n\n### Schedule Output (all modes)\nNemotron returns structured JSON:\n\n```json\n{\n  \"summary\": { \"tasks\": 6, \"focus_hours\": 3, \"free_blocks\": 2 },\n  \"blocks\": [\n    {\n      \"time\": \"9:00 AM\",\n      \"duration\": \"30 min\",\n      \"title\": \"Meeting prep\",\n      \"note\": \"Review notes beforehand\",\n      \"tag\": \"focus\"\n    }\n  ]\n}\n```\n\nCards animate in one by one with a staggered slide-up effect.\n\n---\n\n## System Prompts\n\n**Brain dump:**\n\u003e \"You are a calm, no-nonsense personal scheduler. Return ONLY raw JSON, no markdown. 6–10 blocks, always include a break and a meal.\"\n\n**Scan mode:**\n\u003e \"You are a routine expert. Build a practical ordered routine from the scanned label text — skincare, supplements, meal prep, workout, cleaning, anything. Flag conflicts in notes.\"\n\n---\n\n## Roadmap\n\n- [ ] Voice as the default input (text as opt-in fallback)\n- [ ] End-of-day reflection check-in\n- [ ] Auto-prioritization\n- [ ] Calendar integration with follow-up reminders\n- [ ] Optional stress score / productivity rating\n\n---\n\n## Hackathon\n\nBuilt at **Agents for Impact**, hosted by NVIDIA · March 16, 2026  \n**Nemotron requirement:** ✅\n\n---\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyareva%2Froutine-ai-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyareva%2Froutine-ai-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyareva%2Froutine-ai-app/lists"}