[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1949":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":20,"hasPages":18,"topics":21,"createdAt":9,"pushedAt":9,"updatedAt":29,"readmeContent":30,"aiSummary":31,"trendingCount":15,"starSnapshotCount":15,"syncStatus":32,"lastSyncTime":33,"discoverSource":34},1949,"openwhisp","giusmarci\u002Fopenwhisp","giusmarci","Voice to text, entirely on your machine. Hold Fn, speak, release — transcribed, polished, and pasted. No cloud, no account, no latency.",null,"TypeScript",152,26,1,5,0,8,42.09,false,"main",true,[22,23,24,25,26,27,28],"dictation","electron","local-ai","macos","ollama","speech-to-text","whisper","2026-06-12 04:00:12","# Openwhisp\n\n![Openwhisp](assets\u002Fcover.png)\n\nVoice to text, entirely on your machine. Hold **Fn**, speak, release — your words are transcribed, polished, and pasted right where you need them. No cloud, no account, no latency.\n\nBuilt in a weekend because I kept getting ads for Wispr Flow and thought — why not build it myself?\n\n## How it works\n\n1. **Hold Fn** — OpenWhisp starts listening\n2. **Speak** — your voice is captured locally\n3. **Release Fn** — Whisper transcribes your speech, a local LLM polishes the text, and the result is pasted into whatever app you were using\n\nThe entire pipeline runs locally via [Whisper](https:\u002F\u002Fgithub.com\u002Fopenai\u002Fwhisper) (speech-to-text) and [Ollama](https:\u002F\u002Follama.com) (text enhancement).\n\n## Features\n\n- **Fully local** — no data leaves your Mac\n- **Styles** — switch between Conversation and Vibe Coding modes depending on context\n- **Enhancement levels** — from raw transcription (No Filter) to professional polish (High)\n- **Intent resolution** — if you change your mind mid-sentence (\"make it white... actually, black\"), OpenWhisp resolves to your final intent\n- **Auto-paste** — refined text is pasted directly into the active app\n- **Auto-launch Ollama** — if Ollama is installed, OpenWhisp starts it automatically\n- **Setup wizard** — guided first-launch experience for permissions, models, and configuration\n- **Minimal overlay** — a small audio-reactive grid appears at the bottom of your screen during dictation\n\n## Styles\n\n| Style | Use case |\n|-------|----------|\n| **Conversation** | Messages, emails, notes, everyday writing |\n| **Vibe Coding** | Developer communication — translates casual speech into proper engineering language |\n\nEach style has four enhancement levels: **No Filter**, **Soft**, **Medium**, and **High**.\n\n## Requirements\n\n- macOS (Apple Silicon recommended)\n- [Ollama](https:\u002F\u002Follama.com\u002Fdownload\u002Fmac) — OpenWhisp auto-launches it if installed\n- ~10 GB disk space for models (downloaded on first launch)\n\n## Getting started\n\n**1. Install Ollama and download the text model first:**\n\n```bash\n# Install Ollama from https:\u002F\u002Follama.com\u002Fdownload\u002Fmac, then:\nollama serve\n\n# In a new terminal, pull the text enhancement model (~9.6 GB)\nollama pull gemma4:e4b\n```\n\n**2. Clone and run Openwhisp:**\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fgiusmarci\u002Fopenwhisp.git\ncd openwhisp\nnpm install\nnpm run build:native\nnpm run dev\n```\n\nOn first launch, the setup wizard will walk you through:\n\n1. **Ollama** — verifies the connection. If Ollama is running, it connects automatically.\n2. **Speech model** — downloads Whisper Base Multilingual (~150 MB) automatically.\n3. **Text model** — detects the Gemma 4 model you already pulled.\n4. **Permissions** — microphone access for recording, plus Accessibility and Input Monitoring for Fn key listening and auto-paste.\n\nAfter setup, click into the text field where you want the text to go (an email, chat, code editor, etc.), then hold **Fn** and speak. When you release, the transcribed and enhanced text is automatically pasted into that field. If you move away or no text field is selected, the text is still copied to your clipboard — just use **Cmd+V** to paste it wherever you need.\n\n## Default models\n\n| Purpose | Model | Size |\n|---------|-------|------|\n| Speech-to-text | `onnx-community\u002Fwhisper-base` | ~150 MB |\n| Text enhancement | `gemma4:e4b` | ~9.6 GB |\n\nYou can switch to any Ollama-compatible model from the Models page.\n\n## Tech stack\n\n- **Electron** + **React** + **TypeScript** — desktop shell and UI\n- **@huggingface\u002Ftransformers** — local Whisper inference\n- **Ollama** — local LLM inference via API\n- **Swift** — native macOS helper for Fn key listening, focus detection, and paste simulation\n- **electron-vite** — build tooling\n- **Hugeicons** — UI icons\n\n## Building for distribution\n\n```bash\nnpm run package\n```\n\nBuilds the Electron app, compiles the Swift helper, and packages everything into a `.dmg` and `.zip` in the `release\u002F` directory.\n\n## Project structure\n\n```\nsrc\u002F\n  main\u002F           # Electron main process\n    dictation.ts    # Transcription + rewrite pipeline\n    ollama.ts       # Ollama API client + auto-launch\n    prompts.ts      # Global rules + style + level prompt matrix\n    settings.ts     # Settings persistence\n    windows.ts      # Window creation and positioning\n  renderer\u002F       # React UI\n    App.tsx         # Sidebar layout, pages, setup wizard, overlay\n    styles.css      # Complete styling\n    audio-recorder.ts # Web Audio recorder with level metering\n  preload\u002F        # Electron preload bridge\n  shared\u002F         # Shared types and constants\nswift\u002F\n  OpenWhispHelper.swift  # Native macOS helper\n```\n\n## License\n\nMIT\n\n---\n\nMade by [Raelume](https:\u002F\u002Fraelume.ai)\n","Openwhisp 是一个完全在本地运行的语音转文字工具。用户只需按住 Fn 键说话，松开后即可将语音转换为文本，并自动粘贴到当前活动的应用程序中，整个过程无需云服务、账户注册且无延迟。该项目基于 Whisper 和 Ollama 两大技术实现，前者负责语音识别，后者用于文本优化。提供了两种风格（日常对话与编程交流）和四个级别的文本增强选项，能够适应从普通写作到专业编码的各种场景。适用于 macOS 系统，特别是需要高效输入但又注重隐私保护的用户。",2,"2026-06-11 02:46:59","CREATED_QUERY"]