warchi
Описание
SPA для управления архитектурными моделями и нотациями. Предоставляет интерфейс для создания, редактирования и версионирования доменных моделей с поддержкой компонентов, связей и пользовательских свойств.
11.83 MiB
Языки
- Vue48,1%
- TypeScript45,6%
- Shell2,1%
- JavaScript2,1%
- HTML1,8%
- CSS0,2%
- Остальные0,1%
19 дней назад
месяц назад
2 месяца назад
2 месяца назад
23 дня назад
день назад
23 дня назад
23 дня назад
19 дней назад
день назад
19 дней назад
2 месяца назад
25 дней назад
2 месяца назад
месяц назад
месяц назад
2 месяца назад
25 дней назад
день назад
день назад
день назад
19 дней назад
2 месяца назад
2 месяца назад
25 дней назад
25 дней назад
месяц назад
2 месяца назад
2 месяца назад
2 месяца назад
2 месяца назад
25 дней назад
25 дней назад
2 месяца назад
2 месяца назад
2 месяца назад
месяц назад
2 месяца назад
2 месяца назад
2 месяца назад
день назад
день назад
19 дней назад
12 дней назад
2 месяца назад
2 месяца назад
2 месяца назад
2 месяца назад
25 дней назад
месяц назад
README.md
wArchi
Frontend SPA for architectural modeling workflows: managing models, notations, visual styles, and versioned entities.
Русская версия: README.ru.md
Features
- Notation editor on top of Papirus canvas (selection, transforms, auto-layout)
- JSON import/export for notation data
- Component and relation style customization
- Custom node shapes with dedicated outline editor
- Tags, custom attributes, and relation rules editor
- Versioned models and notations
- Built-in documentation section (
) with guides, hotkeys, FAQ, and changelog/docs - Wiki section (
) for entity-linked documentation pages/wiki - Blue/green deployment support via Helm and deploy.sh
Tech Stack
- Vue 3 (
, Composition API)<script setup> - TypeScript (strict mode)
- Vite
- Vue Router 5
- Vitest
Requirements
- Node.js 18+
- npm 9+
- Papirus NPM package (
)@ngroznykh/papirus
Quick Start
App runs on and proxies http://localhost:5173 to backend./api/*
NPM Scripts
| Command | Description |
|---|---|
| Start dev server |
| Run ESLint |
| Auto-fix lint issues |
| Type-check and production build |
| Preview built app |
| Run unit tests |
| Run unit tests in watch mode |
Deployment (deploy.sh)
deploy.sh
supports two modes:./deploy.sh
- Legacy: recreates release
- Blue/Green: deploys inactive color, verifies readiness, optionally switches traffic
Main environment flags:
| Variable | Default | Purpose |
|---|---|---|
| | Kubernetes namespace |
| | Helm release name |
| | Helm chart path |
| | Values file |
| | Build Docker image before deploy |
| | Readiness timeout in seconds |
| | Ingress host in output hints |
| | Image tag override |
| | Enable blue/green mode |
| | Switch traffic after green/blue verification |
| | Service used to detect active color |
Examples:
Environment Variables
Configured via :.env.local
| Variable | Default | Purpose |
|---|---|---|
| | Backend API URL |
| empty | API base URL |
| | API version |
| | Model live sync mode: , , or (WebSocket + polling fallback) |
| | Polling interval (ms) used in mode and as fallback in |
Architecture Notes
- State management uses composables (no global store)
- API layer is based on typed
wrappersApiResult<T> - Entities are versioned and grouped by name
- Notation editor uses Papirus rendering engine
Documentation
- In-app documentation section:
(overview, models, notations, diagrams, types, shapes, hotkeys, FAQ, changelog)/docs - Entity wiki section:
(model, notation, type, and shape linked pages)/wiki - Documentation content source: src/features/docs/content/*.md
- Technical plans and implementation notes: docs/*.md
Open Source Readiness
For public release preparation, see:
- CONTRIBUTING.md
- SECURITY.md
- CODE_OF_CONDUCT.md
License
This project uses dual licensing:
for open-source usageAGPL-3.0-or-later- Commercial license for proprietary/closed-source commercial usage
See:
- LICENSE
- LICENSE_COMMERCIAL.md