{"id":39893026,"url":"https://github.com/dmitriyg0r/ai-uml-builder","last_synced_at":"2026-01-18T15:00:44.393Z","repository":{"id":325653387,"uuid":"1101947894","full_name":"dmitriyg0r/ai-uml-builder","owner":"dmitriyg0r","description":"AI UML Builder is a modern React-based application that transforms natural language descriptions of system architecture, classes, or processes into professional UML diagrams using artificial intelligence","archived":false,"fork":false,"pushed_at":"2025-12-18T07:00:31.000Z","size":14961,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-21T15:23:04.611Z","etag":null,"topics":["ai","code-generation","code-visualization","deepseek","diagrams","polza-ai","postgres","react","uml","uml-diagram","vite"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dmitriyg0r.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-22T14:37:54.000Z","updated_at":"2025-12-18T07:00:14.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/dmitriyg0r/ai-uml-builder","commit_stats":null,"previous_names":["dmitriyg0r/ai-uml-builder"],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/dmitriyg0r/ai-uml-builder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriyg0r%2Fai-uml-builder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriyg0r%2Fai-uml-builder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriyg0r%2Fai-uml-builder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriyg0r%2Fai-uml-builder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmitriyg0r","download_url":"https://codeload.github.com/dmitriyg0r/ai-uml-builder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriyg0r%2Fai-uml-builder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28538868,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T14:59:57.589Z","status":"ssl_error","status_checked_at":"2026-01-18T14:59:46.540Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","code-generation","code-visualization","deepseek","diagrams","polza-ai","postgres","react","uml","uml-diagram","vite"],"created_at":"2026-01-18T15:00:35.648Z","updated_at":"2026-01-18T15:00:44.375Z","avatar_url":"https://github.com/dmitriyg0r.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎨 AI UML Builder\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"logoname.png\" alt=\"AI UML Builder Logo\" width=\"600\"/\u003e\n  \n  \u003cp align=\"center\"\u003e\n    \u003cstrong\u003eTransform your ideas into professional diagrams with AI\u003c/strong\u003e\n  \u003c/p\u003e\n  \n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"#-key-features\"\u003eFeatures\u003c/a\u003e •\n    \u003ca href=\"#-quick-start\"\u003eQuick Start\u003c/a\u003e •\n    \u003ca href=\"#-demo\"\u003eDemo\u003c/a\u003e •\n    \u003ca href=\"#-documentation\"\u003eDocs\u003c/a\u003e •\n    \u003ca href=\"#-contributing\"\u003eContributing\u003c/a\u003e\n  \u003c/p\u003e\n\n  ![React](https://img.shields.io/badge/React-19-blue?logo=react)\n  ![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue?logo=typescript)\n  ![Tauri](https://img.shields.io/badge/Tauri-2.0-FFC131?logo=tauri)\n  ![License](https://img.shields.io/badge/License-Proprietary-red)\n  [![GitHub stars](https://img.shields.io/github/stars/dmitriyg0r/ai-uml-builder?style=social)](https://github.com/dmitriyg0r/ai-uml-builder/stargazers)\n\n\u003c/div\u003e\n\n---\n\n## 💡 What is AI UML Builder?\n\nAI UML Builder is a **powerful desktop application** that converts natural language descriptions into beautiful, professional diagrams. No more struggling with complex diagramming tools—just describe what you need in plain English (or Russian!), and let AI do the heavy lifting.\n\n**Perfect for:**\n- 👨‍💻 Software developers documenting architecture\n- 📚 Students learning UML and system design\n- 🏢 Technical writers creating documentation\n- 👥 Teams collaborating on system design\n\n![Demo](demo.gif)\n\n### 🆕 Latest Updates\n\n**v0.0.4** - Multi-Language Support\n- 🌍 Full interface localization (English \u0026 Russian)\n- 🤖 AI-generated chat titles from your first prompt\n- 🔄 Automatic chat name translation when switching languages\n- 🎯 Smart language detection based on browser settings\n- 📝 Improved user experience for international users\n\n\n\n## 🎯 Key Features\n\n### 🤖 AI-Powered Intelligence\n- **Natural Language Processing** - Describe your diagram in plain English or Russian\n- **Context-Aware Generation** - AI understands complex system architectures\n- **Iterative Refinement** - Ask for changes and improvements naturally\n- **Smart Formatting** - Auto-formats code for readability\n- **Auto-Generated Titles** - AI creates meaningful chat names from your first prompt\n\n### 📊 Comprehensive Diagram Support\n- **Class Diagrams** - Model object-oriented systems\n- **Sequence Diagrams** - Visualize interactions and workflows\n- **Flowcharts** - Map out processes and decision trees\n- **ER Diagrams** - Design database schemas\n- **State Diagrams** - Model system states and transitions\n- **And many more!** - Full Mermaid.js support\n\n### 💻 Desktop-First Experience\n- **Cross-Platform** - Works on Windows, macOS (Apple Silicon), and Linux\n- **Offline Editing** - Edit diagrams without internet (generation requires API)\n- **Native Performance** - Built with Tauri for blazing-fast, lightweight experience\n- **Tiny Size** - Only 4.9 MB DMG (96% smaller than Electron!)\n- **User Authentication** - Save and sync your diagrams with Supabase\n- **Multi-Language Interface** - Full support for English and Russian (auto-detected)\n\n### 🎨 Professional Editing Tools\n- **Syntax Highlighting** - Color-coded Mermaid editor\n- **Live Preview** - See changes instantly with debounced rendering\n- **Manual Control** - Run button for precise control over updates\n- **Zoom \u0026 Pan** - Navigate large diagrams easily\n- **Export Options** - Save as SVG or PNG\n\n### 🔐 Privacy \u0026 Security\n- **Guest Mode** - Try without registration (3 AI requests)\n- **Secure Auth** - Optional Supabase authentication\n- **Local Storage** - Your data stays on your device in guest mode\n- **API Key Safety** - Environment variables for sensitive data\n- **Data Migration** - Seamless migration from guest to authenticated mode\n\n## 🚀 Quick Start\n\n### 📥 Download (Recommended)\n\n**Get the latest release for your platform:**\n\n\u003cdiv align=\"center\"\u003e\n\n[![Download for macOS](https://img.shields.io/badge/Download-macOS-black?style=for-the-badge\u0026logo=apple)](https://github.com/dmitriyg0r/ai-uml-builder/releases/latest)\n[![Download for Windows](https://img.shields.io/badge/Download-Windows-blue?style=for-the-badge\u0026logo=windows)](https://github.com/dmitriyg0r/ai-uml-builder/releases/latest)\n[![Download for Linux](https://img.shields.io/badge/Download-Linux-orange?style=for-the-badge\u0026logo=linux)](https://github.com/dmitriyg0r/ai-uml-builder/releases/latest)\n\n\u003c/div\u003e\n\n**Platform-specific builds:**\n- 🍎 **macOS**: Apple Silicon (ARM64) - DMG installer\n- 🪟 **Windows**: x64 - MSI installer\n- 🐧 **Linux**: x64 - AppImage/deb\n\n\u003e 💡 **No setup required!** The desktop app comes ready to use immediately.\n\n### 🛠️ Development Setup\n\nIf you want to run from source or contribute:\n\n\u003cdetails\u003e\n\u003csummary\u003eClick to expand development instructions\u003c/summary\u003e\n\n#### Prerequisites\n\n- Node.js (LTS version recommended)\n- Rust (for Tauri) - Install via: `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh` or `brew install rust`\n\n#### Installation\n\n1. **Clone the repository**\n   ```bash\n   git clone https://github.com/dmitriyg0r/ai-uml-builder.git\n   cd ai-uml-builder\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Get your Polza API Key**\n   \n   Register on Polza.ai to get your API key:\n   \n   👉 **[Register on Polza.ai](https://polza.ai?referral=mJw7p6k3Jg)** (with bonus credits)\n   \n   Steps:\n   - Create an account\n   - Top up your balance\n   - Get your API key from the dashboard\n\n4. **Set up environment variables**\n   \n   Create a `.env.local` file in the root directory:\n   ```env\n   VITE_POLZA_API_KEY=your_api_key_here\n   ```\n\n5. **Start the development server**\n   ```bash\n   npm run dev\n   ```\n   \n   This will start both Vite dev server and Tauri desktop app.\n\n\u003c/details\u003e\n\n## 📖 How to Use\n\n### Basic Workflow\n\n1. **🌍 Choose Your Language**\n   - Interface automatically detects your browser language\n   - Manually switch between English and Russian in Settings\n   - Chat names update automatically when changing language\n\n2. **💬 Describe Your Diagram**\n   ```text\n   Create a class diagram for an e-commerce system with User, Product, \n   Order, and Payment classes. Users can place orders containing products.\n   ```\n   Or in Russian:\n   ```text\n   Создай диаграмму классов для системы электронной коммерции с классами \n   Пользователь, Товар, Заказ и Платёж\n   ```\n\n3. **✨ Generate with AI**\n   - Click the send button (or press Ctrl+Enter)\n   - Watch as AI creates your diagram\n   - AI automatically generates a meaningful chat title\n   - Guest users get 3 free AI requests\n\n4. **✏️ Edit the Code**\n   - Switch to the \"Code\" tab\n   - Make manual adjustments to the Mermaid code\n   - Click the green \"Run\" button to update the diagram\n\n5. **🎨 Refine with AI**\n   ```text\n   Add a shopping cart class that connects users and products\n   ```\n\n6. **💾 Export Your Work**\n   - **SVG**: Vector format for documentation\n   - **PNG**: Raster image for presentations\n   - **Copy Code**: Use in other Mermaid tools\n\n### 🌍 Language Support\n\nThe interface automatically detects your browser language and supports:\n- 🇬🇧 **English** - Full interface translation\n- 🇷🇺 **Russian** - Полный перевод интерфейса\n\n**Features:**\n- Auto-detection based on browser settings\n- Manual language switching in Settings menu\n- Chat names automatically update when changing language\n- Seamless experience in both languages\n\n### Example Prompts\n\n\u003cdetails\u003e\n\u003csummary\u003e📝 Class Diagrams\u003c/summary\u003e\n\n**English:**\n```text\nCreate a class diagram for a library management system with \nBook, Member, Loan, and Librarian classes\n```\n\n**Russian:**\n```text\nСоздай диаграмму классов для системы управления библиотекой \nс классами Книга, Читатель, Выдача и Библиотекарь\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e🔄 Sequence Diagrams\u003c/summary\u003e\n\n**English:**\n```text\nSequence diagram for user authentication: user enters credentials,\nsystem validates, checks database, returns token\n```\n\n**Russian:**\n```text\nДиаграмма последовательности для аутентификации: пользователь вводит данные,\nсистема проверяет, обращается к базе данных, возвращает токен\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e📊 Flowcharts\u003c/summary\u003e\n\n**English:**\n```text\nFlowchart for order processing: receive order, check inventory,\nif available then process payment and ship, else notify customer\n```\n\n**Russian:**\n```text\nБлок-схема обработки заказа: получить заказ, проверить наличие,\nесли есть - обработать платёж и отправить, иначе уведомить клиента\n```\n\u003c/details\u003e\n\n## 🏗️ Project Structure\n\n```\nai-uml-builder/\n├── components/           # React components\n│   ├── Auth/            # Authentication UI\n│   ├── Editor.tsx       # Code editor with syntax highlighting\n│   ├── MermaidRenderer.tsx  # Diagram rendering\n│   └── ...\n├── hooks/               # Custom React hooks\n│   ├── useAuth.tsx     # Authentication state\n│   ├── useChats.ts     # Chat/diagram management\n│   └── useDebouncedValue.ts\n├── services/            # External integrations\n│   ├── aisetService.ts # Polza AI API\n│   └── supabaseClient.ts # Database connection\n├── src-tauri/           # Tauri backend (Rust)\n│   ├── src/            # Rust source code\n│   ├── icons/          # App icons\n│   └── tauri.conf.json # Tauri configuration\n├── i18n.ts             # Internationalization (i18n) configuration\n└── types.ts            # TypeScript definitions\n```\n\n## 🛠️ Tech Stack\n\n### Core Technologies\n- ⚛️ **React 19** - Modern UI framework with hooks\n- 📘 **TypeScript** - Type-safe development\n- ⚡ **Vite** - Lightning-fast build tool\n- 🦀 **Tauri 2.0** - Lightweight, secure desktop framework with Rust backend\n\n### Key Libraries\n- 🎨 **Tailwind CSS** - Utility-first styling\n- 📊 **Mermaid.js** - Diagram rendering engine\n- 🎯 **Prism.js** - Syntax highlighting\n- 🔍 **react-zoom-pan-pinch** - Diagram navigation\n- 🌍 **react-i18next** - Internationalization framework\n\n### Backend Services\n- 🤖 **Polza AI** - DeepSeek AI integration\n- 🗄️ **Supabase** - Authentication and database\n- 🔐 **Row Level Security** - Data protection\n\n## 📜 Available Scripts\n\n| Command | Description |\n|---------|-------------|\n| `npm run dev` | Start Tauri development app |\n| `npm run build` | Build Tauri app for current platform |\n| `npm run build:mac` | Build for macOS (ARM64) |\n| `npm run build:win` | Build for Windows (x64) |\n| `npm run build:linux` | Build for Linux (x64) |\n| `npm run preview` | Preview Vite build |\n\n## 🤝 Contributing\n\nWe welcome contributions from the community! Whether it's:\n\n- 🐛 Bug reports\n- 💡 Feature suggestions\n- 📝 Documentation improvements\n- 🔧 Code contributions\n\n**Get started:**\n1. Read our [Contributing Guide](CONTRIBUTING.md)\n2. Check out [open issues](https://github.com/dmitriyg0r/ai-uml-builder/issues)\n3. Join [Discussions](https://github.com/dmitriyg0r/ai-uml-builder/discussions)\n\n### 🌟 Show Your Support\n\nIf you find AI UML Builder helpful:\n\n- ⭐ **Star this repository** - It helps others discover the project!\n- 🐦 **Share on social media** - Spread the word\n- ☕ **[Buy me a coffee](https://www.donationalerts.com/r/dmitriygor)** - Support development\n- 📝 **Write a blog post** - Share your experience\n\nEvery star, share, and contribution helps make this project better! 🙏\n\n## 🗺️ Roadmap\n\n### ✅ Completed\n- [x] AI-powered diagram generation\n- [x] Multi-chat support with history\n- [x] User authentication (Supabase)\n- [x] Export to PNG/SVG\n- [x] Syntax-highlighted code editor\n- [x] Guest mode (3 free requests)\n- [x] Auto-scaling diagrams\n- [x] Desktop apps (Win/Mac/Linux)\n- [x] Multi-language interface (EN/RU)\n- [x] Auto-generated chat titles\n- [x] Language-aware chat names\n\n### 🚧 In Progress\n- [ ] Dark/light theme toggle\n- [ ] More diagram templates\n- [ ] Diagram versioning\n- [ ] Additional language support\n\n### 💭 Planned\n- [ ] Collaborative real-time editing\n- [ ] Custom AI model selection\n- [ ] Integration with GitHub/GitLab\n- [ ] Plugin system for extensions\n- [ ] Mobile companion app\n- [ ] Cloud diagram storage\n- [ ] Team workspaces\n\n**Have ideas?** Open a [feature request](https://github.com/dmitriyg0r/ai-uml-builder/issues/new?template=feature_request.md)!\n\n## 📝 License\n\nThis project is licensed under a **Proprietary License**.\n\n**You may:**\n- ✅ Use for personal, non-commercial purposes\n- ✅ View and study the source code\n- ✅ Modify for personal use\n- ✅ Contribute via pull requests\n\n**You may NOT:**\n- ❌ Distribute the software or modified versions\n- ❌ Use for commercial purposes without permission\n- ❌ Sell or redistribute binaries\n\nFor commercial licensing, please contact **dmitriyg0r@yandex.ru**\n\nSee the [LICENSE](LICENSE) file for full details.\n\n## 🙌 Acknowledgments\n\n- Built with [Mermaid.js](https://mermaid.js.org/)\n- API provided by [Polza AI](https://polza.ai/)\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**Made with ❤️ by DreamSoftware**\n\nIf this project helped you, [consider buying me a coffee](https://www.donationalerts.com/r/dmitriygor) ☕\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmitriyg0r%2Fai-uml-builder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmitriyg0r%2Fai-uml-builder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmitriyg0r%2Fai-uml-builder/lists"}