arepos-server
Описание
Сервис wArchi Backend для управления доменными моделями, нотациями и связанными сущностями с полной поддержкой аудита изменений.
Языки
- Kotlin91,3%
- Shell5,4%
- PLpgSQL2,9%
- Smarty0,4%
arepos-server
Backend service for managing domain models, notations, and related entities with full audit trail support.
Русская версия:
The project is built with Kotlin + Spring Boot, stores flexible entity attributes in PostgreSQL JSONB, and is designed to run both locally and in Kubernetes.
Features
- REST API under
for users, models, notations, node/link types, components, relations, and relation rules/api/v1/* - Automatic database migrations via Liquibase
- Audit logging for data changes
- JWT-based authentication and refresh flow
- PostgreSQL-first schema with semantic versioning constraints
- Helm chart and deployment scripts for Kubernetes
Tech Stack
- Kotlin 2.2.x
- Spring Boot 3.5.x
- JDK 24/25
- PostgreSQL 16+
- Liquibase
- Gradle (Kotlin DSL)
Project Structure
Requirements
- JDK 24 or 25
- Docker (for local image build and Testcontainers-based tests)
- PostgreSQL (if running outside Testcontainers)
- MinIO (if
, default mode)FILE_STORAGE=minio - Kubernetes + Helm (for cluster deployment)
Local Development
1) Configure environment
Default values are defined in .
Important environment variables:
(default:DB_URL)jdbc:postgresql://localhost:5432/arepos(default:DB_USERNAME)arepos(default:DB_PASSWORD)arepos(required for production)JWT_SECRET(recommended for admin bootstrap flow)ADMIN_SECRET(FILE_STORAGEby default; useminiofor local run without file storage)disabled,MINIO_ENDPOINT,MINIO_ACCESS_KEY,MINIO_SECRET_KEY(whenMINIO_BUCKET)FILE_STORAGE=minio
2) Build and run
3) Run tests
Build Commands
API
- Swagger UI:
— interactive API documentation/swagger-ui.html - OpenAPI spec (JSON): /v3/api-docs
- Health endpoints:
- /actuator/health/liveness
- /actuator/health/readiness
- Prometheus metrics:
- /actuator/prometheus
Deployment
- deploy to Kubernetes using Helmdeploy.sh- uninstall releaseundeploy.sh- lint/template smoke checkshelmCheck.sh- Chart docs: charts/arepos-server/README.md
For blue/green and deployment flags, see .
Open Source Guide
If you plan to publish the project publicly, start with:
/CONTRIBUTING.mdCONTRIBUTING.ru.md/SECURITY.mdSECURITY.ru.md/CODE_OF_CONDUCT.mdCODE_OF_CONDUCT.ru.md
Contributing
Please read before opening a pull request.
Security
Please read for reporting vulnerabilities.
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