ΠΠ°ΡΠΈΡΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ½Π°ΡΡ β ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΌΠ΅ΡΡ ΡΠ΅ΠΌΠΎΠ½ΡΠ° Ρ Π²ΠΈΠ»ΠΊΠΎΠΉ ΡΠ΅Π½.
ΠΠ΅Π±-ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΡΠ΅ΠΌΠΎΠ½ΡΠ°: ΠΏΠΎ ΡΠΎΡΠΌΠ΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΈΡΠ°Π΅Ρ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ, ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ Π½ΠΎΡΠΌΠ°ΠΌ ΡΠ°ΡΡ ΠΎΠ΄Π°, ΡΠ°Π±ΠΎΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΠΈ ΠΈΡΠΎΠ³ΠΎΠ²ΡΡ Π²ΠΈΠ»ΠΊΡ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ / ΡΡΠ΅Π΄Π½ΡΡ / ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ β Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅Π΄ΠΎΠΌΠΎΡΡΡΡ Π·Π°ΠΊΡΠΏΠΊΠΈ ΠΈ ΠΏΠ»Π°Π½ΠΎΠΌ ΡΠ°Π±ΠΎΡ.
Π‘Π»Π΅Π²Π° β 2D-ΡΠ΅Π΄Π°ΠΊΡΠΎΡ: ΡΡΠ½ΠΈΡΠ΅ ΡΠ³Π»Ρ ΠΏΠ»Π°Π½Π°, ΠΊΠ»ΠΈΠΊΠ°ΠΉΡΠ΅ ΠΏΠΎ ΡΡΠ΅Π½Π΅, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΎΡΠΊΡ, ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ β ΡΡΠΎΠ±Ρ Π·Π°Π΄Π°ΡΡ Π΄Π»ΠΈΠ½Ρ. Π‘ΠΏΡΠ°Π²Π° β ΠΆΠΈΠ²Π°Ρ ΡΠΌΠ΅ΡΠ°: ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ, Π²ΠΈΠ»ΠΊΠ° ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ, Π²Π΅Π΄ΠΎΠΌΠΎΡΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² ΠΈ ΠΏΠ»Π°Π½ ΡΠ°Π±ΠΎΡ. ΠΡΡ ΡΡΠΈΡΠ°Π΅ΡΡΡ Π½Π° backend ΠΏΠΎ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌ Π½ΠΎΡΠΌΠ°ΠΌ ΡΠ°ΡΡ ΠΎΠ΄Π°.
- βοΈ 2D-ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ β ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Π»ΡΠ±ΠΎΠΉ ΡΠΎΡΠΌΡ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠ½Π°Ρ, Π²ΡΡΠΎΡΠ° ΠΏΠΎΡΠΎΠ»ΠΊΠ°, ΡΠΎΡΠΌΠ° ΠΏΠΎΡΠΎΠ»ΠΊΠ° (ΠΏΠ»ΠΎΡΠΊΠΈΠΉ / ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ / ΠΌΠ°Π½ΡΠ°ΡΠ΄Π½ΡΠΉ ΡΠΊΠ°Ρ), Π΄Π²Π΅ΡΠΈ ΠΈ ΠΎΠΊΠ½Π°.
- π Π’ΠΎΡΠ½Π°Ρ Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡ β ΠΏΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ»Π° ΠΈ ΠΏΠΎΡΠΎΠ»ΠΊΠ°, ΠΏΠ΅ΡΠΈΠΌΠ΅ΡΡ, ΠΏΠ»ΠΎΡΠ°Π΄Ρ ΡΡΠ΅Π½ Π·Π°
Π²ΡΡΠ΅ΡΠΎΠΌ ΠΏΡΠΎΡΠΌΠΎΠ²; ΡΠ°ΡΡΡΡ Π²
Decimal, ΠΏΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ ΡΠ½ΡΡΠΎΠ²Π°Π½ΠΈΡ. - π§± ΠΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ Π½ΠΎΡΠΌΠ°ΠΌ β ΡΠ°ΡΡ ΠΎΠ΄, ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ Π²Π²Π΅ΡΡ Π΄ΠΎ ΡΠ°ΡΠΎΠ²ΠΊΠΈ, Π·Π°ΠΏΠ°Ρ 8β12 %.
- π· Π Π°Π±ΠΎΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² β ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ Ρ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π½Π° ΡΠ΅ΡΠ½ΠΎΠ²ΡΠ΅, ΠΏΡΠ΅Π΄ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΠΈ ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΡΡΠ°ΠΏΡ.
- ποΈ ΠΠ±ΡΡΠΌ ΡΠ΅ΠΌΠΎΠ½ΡΠ° β ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΡΠΎΠ²Π°Ρ / ΡΠ΅ΡΠ½ΠΎΠ²Π°Ρ + ΡΠΈΡΡΠΎΠ²Π°Ρ / ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ½ΠΎΠ²Π°Ρ.
- π° ΠΠΈΠ»ΠΊΠ° ΡΠ΅Π½Ρ β ΠΌΠΈΠ½ΠΈΠΌΡΠΌ / ΡΡΠ΅Π΄Π½ΡΡ / ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΏΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°ΠΌ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΠΌ, Π° Π΄Π»Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ β Π²Π°ΡΠΈΠ°Π½ΡΡ Β«ΠΠΊΠΎΠ½ΠΎΠΌ / Π‘ΡΠ°Π½Π΄Π°ΡΡ / ΠΡΠ΅ΠΌΠΈΡΠΌΒ».
- π ΠΡΠΎΠ·ΡΠ°ΡΠ½ΡΠ΅ ΡΠ΅Π½Ρ β Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ (ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΊΠ°ΡΡΠΎΡΠΊΡ ΡΠΎΠ²Π°ΡΠ° ΠΈΠ»ΠΈ ΠΏΡΠ°ΠΉΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ), ΡΠ΅Π³ΠΈΠΎΠ½ ΠΈ Π΄Π°ΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ; Π²ΡΠ±ΠΎΡ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° (ΠΠ΅Π³Π°ΡΡΡΠΎΠΉ / ΠΠ΅ΠΌΠ°Π½).
- π³οΈ Π‘ΠΊΡΡΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ β ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ Π²ΠΈΠ»ΠΊΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π΄ΠΎΠΏΠ»Π°Ρ Π·Π° ΡΠΎ, ΡΡΠΎ Π²ΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ (Π΄Π΅ΠΌΠΎΠ½ΡΠ°ΠΆ, Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅, ΡΡΡΠΆΠΊΠ°, ΡΡΡΠΎΠ±Π»Π΅Π½ΠΈΠ΅).
- πΎ ΠΡΠΎΠ΅ΠΊΡΡ β ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠΌΠ΅ΡΡ ΠΈ ΡΡΡΠ»ΠΊΠ° Β«ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡΒ».
- π ΠΠΊΡΠΏΠΎΡΡ β PDF, Excel, ΠΏΠ΅ΡΠ°ΡΡ ΡΠΌΠ΅ΡΡ (ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ°, ΡΠ°ΡΠΊΡΡΡΡΠΉ ΡΠΎΡΡΠ°Π²).
- πΌοΈ ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅ΡΡΠ΅ΠΆΠ° (beta) β ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΡΠ°Π΅ΡΡΡ ΠΈΠ·Π²Π»Π΅ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΡ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΈ ΠΏΡΠ°Π²ΠΈΡ Π²ΡΡΡΠ½ΡΡ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ MVP β ΡΡΡΠ½ΠΎΠΉ 2D-Π²Π²ΠΎΠ΄.
- ΠΠ°Π΄Π°ΡΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ 2D-ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ (ΡΠ΅ΡΠ΅Π· ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΠ΅ΠΊ).
- Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ Π²ΡΡΠΎΡΡ ΠΈ ΡΠΎΡΠΌΡ ΠΏΠΎΡΠΎΠ»ΠΊΠ°, Π΄Π²Π΅ΡΠΈ ΠΈ ΠΎΠΊΠ½Π°.
- ΠΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ ΠΎΠ±ΡΡΠΌ ΡΠ΅ΠΌΠΎΠ½ΡΠ° (ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΡΠΎΠ²Π°Ρ / ΡΠ΅ΡΠ½ΠΎΠ²Π°Ρ + ΡΠΈΡΡΠΎΠ²Π°Ρ / ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ½ΠΎΠ²Π°Ρ), Π³ΠΎΡΠΎΠ΄ ΠΈ ΠΌΠ°Π³Π°Π·ΠΈΠ½, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ ΡΠ°Π±ΠΎΡ ΠΈ ΠΎΡΠ΄Π΅Π»ΠΊΡ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠΈ (ΠΏΠΎΠ», ΡΡΠ΅Π½Ρ, ΠΏΠΎΡΠΎΠ»ΠΎΠΊ, ΡΠ»Π΅ΠΊΡΡΠΈΠΊΠ°, ΡΠ°Π½ΡΠ΅Ρ Π½ΠΈΠΊΠ°).
β Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΡΠΈΡΠ°Π΅Ρ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ, ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΈ ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ ΡΠΌΠ΅ΡΡ Ρ Π²ΠΈΠ»ΠΊΠΎΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΈ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠ΅Π½.
| Π‘Π»ΠΎΠΉ | Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ |
|---|---|
| Frontend | React + TypeScript + Vite, Zustand, SVG/Konva |
| Backend | Python 3.12, FastAPI, SQLAlchemy, Alembic, pytest |
| ΠΠ | PostgreSQL |
| ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° | Docker Compose, GitHub Actions |
git clone https://github.com/Ka1Zed/repair-estimator.git
cd repair-estimator
cp .env.example .env
docker compose up -d # ΠΏΠΎΠ΄Π½ΡΡΡ PostgreSQLΠΠ°Π»ΡΡΠ΅ backend ΠΈ frontend Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°Ρ :
# backend
cd backend && python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
alembic upgrade head && python -m app.db.seed
uvicorn app.main:app --reload # http://localhost:8000
# frontend
cd frontend && npm install
npm run dev # http://localhost:5173ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ (Apple Silicon, poppler, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ, ΡΠ΅ΡΡΡ, ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ) β
Π² docs/development.md. ΠΠ΅ΠΏΠ»ΠΎΠΉ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ β
Π² docs/deployment.md; ΡΠ°ΠΌ ΠΆΠ΅ β ΠΊΠ°ΠΊ Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠ΅ΡΠ΅-ΠΊΠ°Π»ΠΈΠ±ΡΠΎΠ²Π°Π½Π½ΡΠ΅
seed-ΡΠ΅Π½Ρ Π½Π° ΠΏΡΠΎΠ΄ (python -m app.db.seed --refresh-seed-prices).
- ΠΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° β Π·Π°ΠΏΡΡΠΊ, ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΡΡ, ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
- Π Π°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΠ΅ β Π΄Π΅ΠΏΠ»ΠΎΠΉ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΡΠ΅ΡΠ΅Π· Docker Compose, ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΠΠ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅
- ΠΠ°ΠΊ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ β Π²Π΅ΡΠΊΠΈ, PR, ΠΊΠΎΠΌΠΌΠΈΡΡ, ΡΠΎΠ»ΠΈ
- API-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ β ΡΠΎΡΠΌΠ°Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΎΡΠ²Π΅ΡΠΎΠ² frontend β backend
- ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°
- ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ°ΡΡΡΡΠ° ΡΠΌΠ΅ΡΡ β Π½ΠΎΡΠΌΡ ΡΠ°ΡΡ ΠΎΠ΄Π° ΠΈ ΡΠΎΡΠΌΡΠ»Ρ
- ΠΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π½
Π ΠΏΠ΅ΡΠ²ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠΎΠ·Π½Π°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡ: BIM/CAD, ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎΠ΅ Π°Π²ΡΠΎΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠ΅ΠΆΠ΅ΠΉ, 3D-Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Ρ ΡΠΎΠ»ΡΠΌΠΈ, ΠΎΠΏΠ»Π°ΡΠ°, ΠΌΠ°ΡΠΊΠ΅ΡΠΏΠ»Π΅ΠΉΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ², ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅ΡΡΠ΅ΠΆΠ° β ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ beta-ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΡΡΠ½ΡΠΌ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ².
Π£ΡΠ΅Π±Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠ²ΡΠΎΡΡ ΠΈ Π·ΠΎΠ½Ρ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ β Π² AUTHORS ΠΈ docs/contributing.md.
Β© 2026 Π°Π²ΡΠΎΡΡ Repair Estimator (ΡΠΌ. AUTHORS).
ΠΡΠΎΠ΅ΠΊΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ GNU AGPL-3.0. ΠΠΎΡΠΎΡΠΊΠΎ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ: ΠΈΠ·ΡΡΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ Π΄ΠΎΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ, Π½ΠΎ Π»ΡΠ±ΠΎΠΉ, ΠΊΡΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΠ΅ΡΠ²ΠΈΡ, ΠΎΠ±ΡΠ·Π°Π½ ΠΎΡΠΊΡΡΡΡ Π΅Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π° ΡΠ΅Ρ ΠΆΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡΡ . ΠΡΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈ Π½Π΅ Π΄Π°ΡΡ Β«Π·Π°ΠΊΡΡΡΡΒ» Π΅Π³ΠΎ Π² ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠ΅.
ΠΠ²ΠΎΠΉΠ½ΠΎΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠ²ΡΠΎΡΡΠΊΠΎΠ΅ ΠΏΡΠ°Π²ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π°Π²ΡΠΎΡΠ°ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ (Π² Ρ.Ρ. ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΡΡ ΠΈΠ»ΠΈ MIT-) Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Π±Π΅Π· ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ² AGPL β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Π·Π°ΠΊΡΡΡΠΎΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠ΅. ΠΠΎ ΡΠ°ΠΊΠΈΠΌ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ β ΠΊ Π°Π²ΡΠΎΡΠ°ΠΌ (ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ Π² AUTHORS).