Skip to content

πŸ€– AI Writer is a modern desktop writing assistant that combines powerful rich text editing with AI-powered content generation and transformation.

Notifications You must be signed in to change notification settings

marouane-dev75/ai-writer

Repository files navigation

AI Writer - Local Writing Assistant

A modern desktop application combining rich text editing with AI-powered content generation and transformation.

Demo

AI Writer Demo

Key Features

  • πŸ€– Multi-Provider AI Support - OpenAI, Anthropic, or Local Qwen models
  • ✍️ Rich Text Editor - Professional editing powered by Lexical
  • ⚑ Real-Time AI Streaming - Live content generation and transformation
  • 🎯 Transformation Presets - Save and reuse custom text transformation prompts
  • πŸ’Ύ Persistent Workspace - Automatic saving of editor content and settings
  • πŸŒ“ Dark/Light Themes - Comfortable writing in any lighting condition
  • πŸ“Š System Monitoring - AI model status, application logs, and system information
  • 🌍 Internationalization - Multi-language support (English, French)
  • πŸ”’ Privacy-First - Desktop app with local storage and optional local AI models

Capabilities

  • Generate content from prompts with streaming AI responses
  • Transform selected text with AI (e.g., "Make it professional", "Simplify", "Expand")
  • Configure and switch between AI providers with adjustable parameters
  • Monitor AI model status, logs, and system specs

Quick Start

Prerequisites

Installation

# Clone the repository
git clone https://github.com/marouane-dev75/ai-writer
cd ai-writer

# Install dependencies
pnpm install

# Run in development mode
pnpm tauri dev

Build for Production

# Build the application
pnpm tauri build

The built application will be available in src-tauri/target/release/.

Technology Stack

Frontend

  • React 19 - Modern UI library with latest features
  • TypeScript - Type-safe development
  • Tailwind CSS 4 - Utility-first styling
  • Lexical - Extensible rich text editor framework
  • Vite - Fast build tooling
  • React Router 7 - Client-side routing

Backend

  • Rust - High-performance systems language
  • Tauri 2 - Secure desktop application framework
  • Serde - Serialization/deserialization
  • Tokio - Async runtime for AI streaming

AI Integration

  • OpenAI API - GPT models
  • Anthropic API - Claude models
  • Local Qwen - Privacy-focused local models

Project Structure

ai-writer/
β”œβ”€β”€ src/                          # Frontend application
β”‚   β”œβ”€β”€ features/                 # Feature modules
β”‚   β”‚   β”œβ”€β”€ ai-runtime/          # AI streaming & status monitoring
β”‚   β”‚   β”œβ”€β”€ ai-settings/         # AI provider configuration
β”‚   β”‚   β”œβ”€β”€ editor/              # Rich text editor with AI
β”‚   β”‚   β”œβ”€β”€ logging/             # Application logging viewer
β”‚   β”‚   β”œβ”€β”€ system-info/         # System information display
β”‚   β”‚   └── app-restart/         # Application restart management
β”‚   β”œβ”€β”€ pages/                   # Page components
β”‚   β”œβ”€β”€ shared/                  # Shared utilities & components
β”‚   β”‚   β”œβ”€β”€ ui/                  # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ i18n/                # Internationalization
β”‚   β”‚   β”œβ”€β”€ theme/               # Theme management
β”‚   β”‚   └── layouts/             # Layout components
β”‚   └── main.tsx                 # Application entry point
β”‚
└── src-tauri/                   # Backend application
    └── src/
        β”œβ”€β”€ ai/                  # AI provider implementations
        β”œβ”€β”€ commands/            # Tauri command handlers
        β”œβ”€β”€ config/              # Configuration management
        β”œβ”€β”€ editor/              # Editor persistence
        └── logging/             # Logging system

Feature Documentation

Each feature has detailed documentation in its respective directory:

Development

Available Commands

# Frontend development server
pnpm dev

# Tauri development (with hot-reload)
pnpm tauri dev

# Build frontend
pnpm build

# Build Tauri application
pnpm tauri build

# Preview production build
pnpm preview

Code Organization

This project follows clean architecture principles:

  • Feature-based structure - Each feature is self-contained
  • Dependency Inversion - High-level modules depend on abstractions
  • SOLID principles - Maintainable and extensible code
  • TypeScript strict mode - Type safety throughout
  • Rust best practices - Idiomatic Rust with proper error handling

See individual feature READMEs for detailed implementation guidelines.

About

πŸ€– AI Writer is a modern desktop writing assistant that combines powerful rich text editing with AI-powered content generation and transformation.

Resources

Stars

Watchers

Forks

Packages

No packages published