Skip to content

Latest commit

 

History

History
103 lines (71 loc) · 2.42 KB

File metadata and controls

103 lines (71 loc) · 2.42 KB

Voice Writing Assistant

An AI writing assistant that preserves your unique voice and writing style.

Watch how it works here

Demo video

Overview

Voice Writing Assistant is a personalized AI tool that helps improve your writing while maintaining your authentic voice. Unlike generic AI writing assistants, this tool:

  • Learns from YOUR writing samples
  • Preserves YOUR vocabulary and style
  • Integrates directly into your writing workflow
  • Keeps your content private and secure

Architecture

This project consists of two main components:

  1. FastAPI Backend: Handles retrieval, generation, and caching
  2. Chrome Extension: Provides seamless integration with Notion

Tech Stack

  • Vector Search: Leverages RAG (Retrieval Augmented Generation)
  • Language Model: Uses Together AI's Mistral 7B
  • Performance: Redis caching for sub-second responses
  • Integration: Works directly in Notion (more platforms coming soon)

Installation

Backend Setup

# Clone the repository
git clone https://github.com/yourusername/voice-writing-assistant.git
cd voice-writing-assistant

# Set up virtual environment
python -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Create .env file (see .env.example)
cp .env.example .env
# Edit .env with your API keys

Running the Backend

Start the FastAPI server

./run.sh
# or
python -m app.main

The server will start on http://localhost:8001

Chrome Extension Setup

  1. Open Chrome and go to chrome://extensions/
  2. Enable "Developer mode" (toggle in top-right)
  3. Click "Load unpacked"
  4. Select the chrome-extension folder from this repository

Usage

  1. Open Notion in Chrome
  2. Click on any text block to start editing
  3. Press Ctrl+Space (or click the ✨ icon) to get suggestions
  4. Choose a suggestion that matches your style
  5. Accept or dismiss as needed

Development

Backend Development

# Install development dependencies
pip install -r requirements-dev.txt

# Run tests
pytest tests/

# Start server in development mode
uvicorn app.main:app --reload

Extension Development

The Chrome extension uses vanilla JavaScript for maximum compatibility.

# Navigate to extension directory
cd chrome-extension

# Install dev dependencies if editing with npm tools
npm install