bb53eeee8e1583b0eaf7ba3856a4d1afb3fac5f9
Backend: - PdfTemplate model with locale field + UNIQUE(name, locale) constraint - Migration 007: pdf_templates table + template_id FK on generated_pdfs - Template service: CRUD, Jinja2 validation, render preview with sample data - Admin endpoints: CRUD /admin/pdf-templates + POST preview - User endpoint: GET /pdf/templates (active templates list) - pdf_service: resolves template from DB by ID or falls back to default for the appropriate locale - AI generate_pdf tool accepts optional template_id - Seed script + 4 HTML template files: - Basic Report (en/ru) — general-purpose report - Medical Report (en/ru) — health-focused with disclaimers Frontend: - Admin PDF templates page with editor, locale selector, live preview (iframe), template variables reference panel - PDF page: template selector dropdown in generation form - API clients for admin CRUD + user template listing - Sidebar: admin templates link - English + Russian translations Also added Phase 9 (OAuth) and Phase 10 (Rate Limits) placeholders to GeneralPlan. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Personal AI Assistant
A client-server web application for managing different areas of personal life with AI-powered assistance. Upload documents, chat with AI specialists, receive proactive reminders, and track critical information across multiple life domains (health, finance, personal, work, etc.).
Key Features
- AI Chat with Specialists — create chats using configurable skills (e.g., doctor, financial advisor, personal coach). Each skill shapes the AI's behavior as a domain expert.
- Document Management — upload documents (records, reports, contracts, notes, etc.). AI extracts and indexes content for intelligent retrieval.
- Proactive Notifications — AI analyzes your stored data and schedules reminders (deadlines, follow-ups, recurring events) via in-app, email, or Telegram.
- PDF Compilation — request AI-generated summaries and reports as downloadable PDF documents.
- Global Memory — AI maintains a shared memory of critical information across all your chats.
- Multi-language — English and Russian support.
Tech Stack
| Layer | Technology |
|---|---|
| Backend | Python 3.12, FastAPI, SQLAlchemy 2.0, Alembic |
| Frontend | React 18, TypeScript, Vite, Shadcn/ui, Tailwind CSS |
| Database | PostgreSQL 16 |
| AI | Claude API (Anthropic) |
| Notifications | WebSocket, Email (SMTP), Telegram Bot |
| Deployment | Docker Compose |
Getting Started
Prerequisites: Docker and Docker Compose installed.
# Clone the repository
git clone https://git.dolgolyov-family.by/alexei.dolgolyov/personal-ai-assistant.git
cd personal-ai-assistant
# Copy environment config
cp .env.example .env
# Edit .env with your API keys and settings
# Start all services
docker compose up -d
# Create initial admin user
docker compose exec backend python scripts/seed_admin.py
The app will be available at http://localhost.
Project Structure
personal-ai-assistant/
├── backend/ # FastAPI application
├── frontend/ # React SPA
├── telegram-bot/ # Telegram notification bot
├── nginx/ # Reverse proxy config
├── plans/ # Phase subplans
├── docker-compose.yml
└── GeneralPlan.md # Full implementation plan
License
Private project. All rights reserved.
Description
Languages
Python
52.9%
TypeScript
42.3%
HTML
3.8%
CSS
0.4%
Dockerfile
0.4%
Other
0.2%