Sinap is a cognitive layer between thought and digital action, designed to make interaction with your computer as fluid and high-bandwidth as your stream of consciousness.
- Text-to-Speech: Highlight text anywhere on your system and trigger with a triple right-click or Ctrl+Shift+S to hear it spoken using natural voices from OpenAI.
- Minimal UI: Clean interface with playback controls and status indicators.
- Flow Bar: Optional docked UI that floats at the bottom of the screen for quick access.
- Speech-to-Text: Speak into your mic and have words transcribed instantly.
- Thought Feed: Save snippets, notes, and thoughts in a timestamped feed.
- LLM Integration: Summarize content, get answers, and continue threads.
- Install Rust
- Install Node.js and Yarn
- Install Tauri Prerequisites: Ensure you have the necessary platform-specific dependencies (like C++ build tools, WebView2/WebKitGTK) for Tauri development before proceeding. Follow the official guide: Tauri Prerequisites
- Clone the repository:
git clone https://github.com/bwanedead/sinap.git cd sinap - For the best development experience, open the project in VS Code using the workspace file:
code sinap.code-workspace
- Set up the desktop app frontend:
cd desktop yarn install - Create a
.envfile in thedesktopdirectory for your OpenAI API key:Ensure the# In the /desktop folder: # Option 1: Use notepad (Windows) notepad .env # Option 2: Use echo (Cmd/PowerShell) - replace placeholder echo OPENAI_API_KEY=your_actual_openai_api_key_here > .env # Option 3: Use touch/nano (Git Bash/Linux/macOS) # touch .env # nano .env
.envfile contains:OPENAI_API_KEY=your_actual_openai_api_key_here - Run the development server (from the
desktopdirectory):This command compiles the Rust backend and starts the React frontend.yarn tauri dev
- Start the Sinap app using
yarn tauri dev(after setup). - Highlight text in any application.
- Trigger TTS: Triple right-click or press
Ctrl+Shift+S. - Sinap reads the text aloud using OpenAI's TTS API.
- Use the app interface to:
- Control playback (stop, potentially restart - depending on current implementation).
- Toggle the Flow Bar (minimal floating UI).
- Access settings (if implemented).
- No Sound: Make sure your audio device is working and not muted.
- API Key Error: Ensure you've added your actual OpenAI API key to the
.envfile. - Triple Right-Click Not Working: Some applications may intercept right-clicks. Try using the Ctrl+Shift+S shortcut instead.
- "No Text Selected" Error: Highlight text before triggering TTS. The app needs text to be selected first.
- TypeScript/CSS Errors in VS Code: Use the provided workspace file (
sinap.code-workspace) to open the project, which includes proper configuration.
This project combines a Rust backend with a React frontend using Tauri.
Core Technologies:
- Tauri: Framework for building desktop apps with web tech + Rust backend.
- Rust: Backend logic for system interaction, API calls, and audio.
- Key Crates (likely):
tokio(async),reqwest(HTTP),rodio(audio),clipboard-master/arboard(clipboard),global_hotkey(shortcuts),serde(data handling).
- Key Crates (likely):
- React: Frontend UI library.
- TypeScript: Type safety for frontend code.
- Tailwind CSS: Utility-first CSS styling.
- Vite: Frontend build tool.
- OpenAI API: Text-to-Speech service.
For more details, see the setup guide, project plan, and changelog.
Sinap is not just an app—it's the beginning of a personal operating system that extends your cognition, remembers what you were doing, and lets you move through ideas seamlessly. Learn more in our project plan.