Skip to content

A task tracker that converts natural voice input into structured tasks using local Ollama, with React, Express, and MongoDB.

Notifications You must be signed in to change notification settings

ChrisDc777/transcribe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ Voice-Enabled Task Tracker

A full-stack task manager with voice input, AI-powered task parsing, and a clean React UI.


🚀 1. Project Setup

Prerequisites

  • Node.js ≥ 18
  • MongoDB (Atlas preferred)
  • Ollama installed with model gemma2:2b or relevant models like gemma3:1b
  • npm or bun

Installation

Clone Repository

git clone <repo-url>
cd <project-folder>

Backend Setup

cd backend
npm install

Create backend .env:

PORT=3000
MONGODB_URI=<your-mongodb-uri>
OLLAMA_HOST=http://127.0.0.1:11434

Start backend:

npm run dev

Frontend Setup

cd frontend
cd vite-project
bun install

Start frontend:

bun run dev

Running Everything Locally

Service Command
MongoDB Run Atlas
Ollama ollama serve
Backend npm run dev
Frontend bun run dev

🛠️ 2. Tech Stack

Frontend

  • React + Vite using TS
  • TailwindCSS
  • Web Speech API

Backend

  • Node.js + Express
  • MongoDB
  • Ollama (Gemma2:2b) for task parsing

AI

  • Local LLM (Gemma2:2b)
  • Multi-tier parsing (AI → regex → keywords)

🧩 3. Decisions & Assumptions

Design Decisions

  • 3-tier parsing: LLM → regex → keyword fallback
  • Gemma2:2b model for fast local inference
  • Frontend uses Web Speech API for browser-native voice capture

Key Assumptions

  • Natural English speech input
  • Users may not specify priority/due date → sensible defaults
  • Dates stored in UTC

🤖 4. AI Tools Usage

Tools

  • GitHub Copilot – boilerplate & autocomplete in VS Code
  • Claude – architecture suggestions, parsing logic

How They Helped

  • Suggestions in multi-stage task parsing strategy
  • Helped craft prompts for consistent JSON output from Ollama
  • Guided date-parsing logic & fallback handling

What I Learned

  • Ensuring deterministic AI outputs requires explicit instructions
  • Always add non-AI fallback paths
  • Smaller local LLMs are sufficient for structured extraction tasks

About

A task tracker that converts natural voice input into structured tasks using local Ollama, with React, Express, and MongoDB.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors