Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

German Assistant

A local AI-powered writing assistant that corrects language mistakes using AI models.

Select any text, press a keyboard shortcut, and receive grammar corrections instantly.

The assistant uses cloud AI when an internet connection is available and automatically falls back to a local Ollama model when offline.

Features

  • Hybrid AI system (Google Gemini + local Ollama fallback)
  • Fully offline capability
  • Global keyboard shortcut for correction
  • Works across desktop applications
  • Preserves original meaning and vocabulary
  • Provides explanations for corrections
  • Structured JSON responses
  • Multi-language ready architecture

Architecture

  • Python
  • uv for dependency management
  • Ollama for local inference
  • Google Gemini API for online inference
  • Pydantic for structured outputs
  • Tkinter for desktop popup UI
  • Global hotkeys + clipboard integration

Setup

Install dependencies:

uv sync

Install Ollama: https://ollama.com/

Download a local model:

ollama pull qwen3:4b

Create a .env file:

GOOGLE_API_KEY=your_api_key_here

Run the assistant:

uv run german_assistant

Usage

  1. Highlight text in any application.

  2. Press:

    CTRL + ALT + G

  3. The assistant captures the selected text.

  4. The best available AI backend is selected:

    • Google Gemini when internet is available
    • Ollama when offline
  5. A correction popup displays:

    • corrected sentence
    • detected changes
    • explanations

Configuration

Settings can be changed in:

src/german_assistant/config.py

Example:

ollama_model = "qwen3:4b"

Any Ollama-compatible model can be used.

Privacy

Offline mode runs completely locally.

When using Google Gemini, selected text is sent to Google's API for processing.

Roadmap

  • One-click replacement of selected text
  • Improved popup design
  • Support for additional languages
  • User correction history
  • Personalized language learning insights
  • System tray application

About

An application using a local llm to help me correct my german sentences

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages