π¦ Release Notes v2.0.0
ΠΠ°ΡΠ° Π²ΡΠΏΡΡΠΊΠ°: 10 ΠΌΠ°ΡΡΠ° 2026 Π³.
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΉ: v1.5.2...v2.0.0
π― ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡβ
π¨ ΠΠ±Π½ΠΎΠ²Π»ΡΠ½Π½Π°Ρ ΡΠ°ΠΏΠΊΠ° ΡΠ°ΠΉΡΠ°β
ΠΠ°ΡΡΡΠ°Π±Π½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΏΠΊΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ UX ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΈΠ»Ρ.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:β
- Π£Π±ΡΠ°Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Telegram ΠΈΡΠΊΠ»ΡΡΡΠ½ ΠΈΠ· ΡΠ°ΠΏΠΊΠΈ
- Π£Π±ΡΠ°Π½Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ β ΡΠΊΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ
- Π£Π±ΡΠ°Π½ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠ΅ΠΌΡ β ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠ΅ΠΌΡ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΡΠ΄Π°Π»ΡΠ½
- ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ β Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°Π±Π»ΠΎΠ½Β» β Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉΒ», Β«Π¨Π°Π±Π»ΠΎΠ½ΡΒ» β Β«Π‘ΡΠ΅Π½Π°ΡΠΈΠΈΒ»
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π±Π΅ΠΉΠ΄ΠΆ Π²Π΅ΡΡΠΈΠΈ β ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (v2.0.0)
- ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° GitHub β ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π°Ρ ΠΈΠΊΠΎΠ½ΠΊΠ° ΡΡΠ΄ΠΎΠΌ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ:β
- VersionBadge β Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π±Π΅ΠΉΠ΄ΠΆΠ° Π²Π΅ΡΡΠΈΠΈ Π² ΡΠ²Π΅ΡΠ°Ρ Π±ΡΠ΅Π½Π΄Π°
- GithubButton β ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½Π°Ρ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° (ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ°)
- BrandSection β ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½Π°Ρ ΡΠ΅ΠΊΡΠΈΡ Π±ΡΠ΅Π½Π΄Π° Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΈ GitHub
π ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«Π Π΅Π΄Π°ΠΊΡΠΎΡΒ»β
ΠΠ°Π½Π΅Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ²β
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠ²ΠΎΠΉΡΡΠ² Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:β
- Π‘ΠΊΡΡΡΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΉ β Π²ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΠΊΡΠΎΠΌΠ΅ Β«Π’Π΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΒ» ΡΠΊΡΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
- ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠΎΠ² β Π²ΡΠ±ΠΎΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ Π² ΡΠ΅ΠΊΡΠΈΠΈ Β«Π’Π΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΒ»
- Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π² ΡΠ΅ΠΊΡΠΈΠΈ Β«ΠΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°Β»
- Π‘Π±ΠΎΡ ΠΎΡΠ²Π΅ΡΠΎΠ² β ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½Π°Ρ ΡΠ΅ΠΊΡΠΈΡ Ρ Π½ΠΎΠ²ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ:
- Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ·Π»Π°Ρ
- ΠΠΏΡΠΈΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅
- Π£Π±ΡΠ°Π½ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² CSVΒ» β ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π°
- Π‘Π΅ΠΊΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½Π°Π΄ΠΏΠΈΡΠΈ Β«Π‘ΠΊΠΎΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅Β»
- ΠΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΠ½Π½ΡΠΉ ΠΌΠ΅Π΄ΠΈΠ°ΡΠ°ΠΉΠ» β ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ ΡΠ΅ΠΊΡΠΈΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ:
- Π£Π»ΡΡΡΠ΅Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎ URL
- Π£Π»ΡΡΡΠ΅Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΠ° Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
π€ ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΡΒ»β
Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°:β
- Π‘ΠΏΠΈΡΠΎΠΊ Π±ΠΎΡΠΎΠ² β ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ ΡΠΎ ΡΠΏΠΈΡΠΊΠΎΠΌ Π²ΡΠ΅Ρ Π±ΠΎΡΠΎΠ²
- Π’Π΅ΡΠΌΠΈΠ½Π°Π» β ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ Π΄Π»Ρ Π»ΠΎΠ³ΠΎΠ² ΠΈ Π²ΡΠ²ΠΎΠ΄Π°
ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:β
- ΠΠ²Π°ΡΠ°ΡΠΊΠΈ Π±ΠΎΡΠΎΠ² β ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π°Π²Π°ΡΠ°ΡΠΎΠΊ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±ΠΎΡΠ°
- Π£Π»ΡΡΡΠ΅Π½Π½Π°Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ β Π±ΡΡΡΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ
π» ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΠ΄Β»β
ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:β
- ΠΠΊΡΠΏΠΎΡΡ Π² Google Π’Π°Π±Π»ΠΈΡΡ β Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½
π₯ ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈΒ»β
ΠΠ°ΡΡΡΠ°Π±Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ.
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:β
- ΠΠ²Π°ΡΠ°ΡΡ β ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π°Π²Π°ΡΠ°ΡΠΎΠ² Π±ΠΎΡΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
- Π’Π°Π±Π»ΠΈΡΠ° ΠΎΡΠ²Π΅ΡΠΎΠ² β ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΎΡΠ²Π΅ΡΠ°ΠΌΠΈ:
- Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠ° ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΠ°ΠΉΠ»Π°
- Π£Π»ΡΡΡΠ΅Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
- Π£Π΄Π°Π»Π΅Π½Ρ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ (Π΄Π΅ΡΠ°Π»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π΄ΠΈΠ°Π»ΠΎΠ³, Π°ΠΊΡΠΈΠ²Π°ΡΠΈΡ)
- ΠΠΊΡΠΏΠΎΡΡ Π² Google Π’Π°Π±Π»ΠΈΡΡ β Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΠ»ΡΡΡΠ½
- Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠ°ΡΡΡΠ»ΠΎΠΊ
- Π Π°ΡΡΡΠ»ΠΊΠ° ΡΠ·Π»ΠΎΠ² β ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΡΠ»Π°ΡΡ ΡΠ·Π»Ρ:
- ΠΠ΅Π΄ΠΈΠ° ΠΈ Π°Π²ΡΠΎΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΏΠΎΠΊΠ° Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ
- ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° β ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΠ΅ΡΠ΅Π· ΡΡΠ΅Π½Π°ΡΠΈΠΉ
- Π‘Π΅Π»Π΅ΠΊΡΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΏΠ°Π½Π΅Π»ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈ Π΄Π΅ΡΠ°Π»ΡΡ
ποΈ ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠ°Π·Π° IDΒ»β
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ:β
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° β ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°
- ΠΠ½ΠΎΠΏΠΊΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ID β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π½Π°ΠΏΡΠΎΡΠΈΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ID
π§ ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈβ
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:β
npm run devβ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ- Vite dev server β ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π·Π°ΠΏΡΡΠΊΠΎΠΌ
- Hot Module Replacement β Π³ΠΎΡΡΡΠ°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅:β
# ΠΠ°ΠΏΡΡΠΊ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
npm run dev
# Π‘Π΅ΡΠ²Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ
http://localhost:5000
π Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉβ
| ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ | Π€Π°ΠΉΠ»ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ | Π‘ΡΡΠΎΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ | Π‘ΡΡΠΎΠΊ ΡΠ΄Π°Π»Π΅Π½ΠΎ |
|---|---|---|---|
| Π¨Π°ΠΏΠΊΠ° ΡΠ°ΠΉΡΠ° | 10+ | 150+ | 200+ |
| ΠΠ°Π½Π΅Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ² | 15+ | 300+ | 150+ |
| ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΡΒ» | 8+ | 200+ | 100+ |
| ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈΒ» | 20+ | 400+ | 250+ |
| ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΠ΄Β» | 2+ | 10+ | 50+ |
| ΠΠ°Π·Π° ID | 5+ | 80+ | 40+ |
| ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ npm run dev | 3+ | 50+ | 30+ |
| Π Π΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ README | 5+ | 500+ | 400+ |
| ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ | 3+ | 300+ | 50+ |
| ΠΡΠ΅Π³ΠΎ | ~71 | ~2080 | ~1270 |
π§ Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΡΠ°Π»ΠΈβ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ°ΠΏΠΊΠΈβ
// BrandSection Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΈ GitHub
<BrandSection
projectName={projectName}
botInfo={botInfo}
/>
// VersionBadge β Π±Π΅ΠΉΠ΄ΠΆ Π²Π΅ΡΡΠΈΠΈ
<VersionBadge version="2.0.0" />
// GithubButton β ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π°Ρ ΠΈΠΊΠΎΠ½ΠΊΠ°
<GithubButton className="!p-0 !h-auto" />
ΠΠ°Π½Π΅Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ²β
// Π‘ΠΊΡΡΡΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
const [expandedSections, setExpandedSections] = useState({
messageText: true,
keyboard: false,
answers: false,
media: false,
updates: false
});
// ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠΎΠ²
type AnswersDisplay = 'list' | 'comma-separated';
ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΡΒ»β
// Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°
<div className="flex">
<BotList />
<Terminal />
</div>
// ΠΠ²Π°ΡΠ°ΡΠΊΠΈ Π±ΠΎΡΠΎΠ²
<BotAvatar botId={bot.id} />
π ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈβ
ΠΠ°ΡΡΡΠ°Π±Π½ΡΠΉ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ README.md ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:β
- ΠΠ΄ΠΈΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ β Π²ΡΠ΅ ΡΠ°Π³ΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡ Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΠΠ‘
- Π‘ΠΏΠΎΠΉΠ»Π΅ΡΡ Π΄Π»Ρ ΡΠ°Π³ΠΎΠ² β ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π³ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΊΡΡΡ Π² ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡΠ΅ΠΌΡΡ Π±Π»ΠΎΠΊΠ΅
- ΠΠ²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ β Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΊΠ°Π·Π°Π½Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ ΡΠ°ΠΉΡ
- Winget Π΄Π»Ρ Windows β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ΅Π· winget (Git, Node.js, PostgreSQL, Python)
- Homebrew Π΄Π»Ρ macOS β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ΅Π· Homebrew
- ΠΠ±ΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ .env β Π²ΡΠ½Π΅ΡΠ΅Π½ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΈ Windows Π² ΠΎΠ±ΡΡΡ ΡΠ°ΡΡΡ
- Π Π΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ
npm run dev - ΠΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ β ΡΠΎΠ·Π΄Π°Π½ ΡΠ°ΠΉΠ» docs/development/HOW_TO_UPDATE.md
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΡΡΡΠ»ΠΊΠΈ β Π²ΡΠ΅ Π±ΠΈΡΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ
- Π£Π΄Π°Π»Π΅Π½Ρ ΡΠ΅ΠΊΡΠΈΠΈ β Β«Π‘ΠΊΡΠΈΠΏΡΡ ΠΈ ΡΡΠΈΠ»ΠΈΡΡΒ», Β«Π§ΡΠΎ-ΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ?Β», Β«Python Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΒ»
ΠΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:β
docs/development/HOW_TO_UPDATE.mdβ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ GitHub
ΠΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ:β
README.mdβ ΠΏΠΎΠ»Π½ΡΠΉ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ ΡΠ΅ΠΊΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈdocs/README.mdβ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ
π Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°β
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Ρ v1.5.2:β
# ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ
git pull origin main
# Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
cd client
npm install
# Π‘ΠΎΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ
npm run build
# ΠΠ°ΠΏΡΡΡΠΈΡΠ΅
npm run start
Π§Π΅ΡΠ΅Π· Docker:β
# ΠΠ΅ΡΠ΅ΡΠΎΠ±Π΅ΡΠΈΡΠ΅ ΠΎΠ±ΡΠ°Π·
docker-compose build --no-cache
# ΠΠ°ΠΏΡΡΡΠΈΡΠ΅
docker-compose up -d
β οΈ ΠΠ°ΠΆΠ½ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡβ
ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡβ
- ΠΠΊΡΠΏΠΎΡΡ Π² Google Π’Π°Π±Π»ΠΈΡΡ β Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ Β«ΠΠΎΠ΄Β» ΠΈ Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈΒ»
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅β
- ΠΡΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ Β«ΡΠ°Π±Π»ΠΎΠ½Β» Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ Π½Π° Β«ΡΡΠ΅Π½Π°ΡΠΈΠΉΒ»
- ΠΠ½ΠΎΠΏΠΊΠΈ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°Π±Π»ΠΎΠ½Β» ΠΈ Β«Π¨Π°Π±Π»ΠΎΠ½ΡΒ» ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Ρ
ΠΠ°Π½Π΅Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ²β
- Π‘Π΅ΠΊΡΠΈΠΈ ΡΠΊΡΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ°
- ΠΡΠΊΡΡΠ²Π°ΠΉΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ
π¦ ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈβ
ΠΠΎΠ²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΡΡΡΡ.
π Π‘ΡΡΠ»ΠΊΠΈβ
- ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ΅Π»ΠΈΠ·Π°
- Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
- ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
π Π§Π΅ΠΊ-Π»ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡβ
- Π¨Π°ΠΏΠΊΠ° ΡΠ°ΠΉΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π°
- ΠΠ°Π½Π΅Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°
- ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΡΒ» ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π°
- ΠΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈΒ» ΡΠ»ΡΡΡΠ΅Π½Π°
- ΠΠ°Π·Π° ID ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°
- ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Β«ΡΠ°Π±Π»ΠΎΠ½Β» β Β«ΡΡΠ΅Π½Π°ΡΠΈΠΉΒ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ
- ΠΠΎΠΌΠ°Π½Π΄Π°
npm run devΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π° - README.md ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΡΠΎΠ²Π°Π½
- ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π°
- Π‘ΡΡΠ»ΠΊΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: ΠΠΎΠΌΠΌΠΈΡΡ v1.5.2...v2.0.0