ΠΡΠΎΠ΅ΠΊΡΡ Π½Π° ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΡΠ»Π»Π΅ΡΠ΅Π½Ρ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Π½Π° www.iainfreestone.com Π§ΡΠΎΠ±Ρ Π²Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΠΎΠΏΡΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
1. Π Π΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠ°Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ
ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ jog ui ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΠΎΡ ΡΡΠΈΠ»Ρ A Π΄ΠΎ B, CSS Keyframes Animation, Π¦Π΅ΠΏΠΎΡΠΊΠ° Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΊΡΠΎΡΠ΅ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π΅Π· Π΄ΡΡΠ³ΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
Bluebill1049/React-Simple-Animate
π― ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ
ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ aDe ui ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ
Π€ΡΠ½ΠΊΡΠΈΠΈ
- ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΠΎΡ ΡΡΠΈΠ»Ρ A Π΄ΠΎ B
- CSS Keyframes Π°Π½ΠΈΠΌΠ°ΡΠΈΡ
- Π¦Π΅ΠΏΠΎΡΠΊΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ
- ΠΡΠΎΡΠ΅ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π΅Π· Π΄ΡΡΠ³ΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ
$ npm install react-simple-animate
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΡ
- ΠΠ°ΡΠΈΠ½Π°Ρ
- ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ
- AnimateKeyFrames.
- AnimateGroup.
- ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΊΡΡΡΠΊΠΈ
- ΠΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΎΠΉ
ΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ
import React from "react";
import { Animate, AnimateKeyframes, AnimateGroup } from "react-simple-animate";
export default () => (
<>
{/* animate individual element. */}
React simple animate
{/* animate keyframes with individual element. */}
React simple animate with keyframes
< 2. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π½ΠΈΠ΅
ΠΡΠΎΡΡΠΎΠ΅, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠΎΡΠ½ΠΎΠ΅ ΠΈ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²ΠΎΠΌ Π΄Π»Ρ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
avkonst/hookstate.
ΠΡΠΎΡΡΠΎΠ΅, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠΎΡΠ½ΠΎΠ΅ ΠΈ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠ΅ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΊΡΡΠΊΠ°Ρ
ΠΡΠΎΡΡΠΎΠ΅, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠΎΡΠ½ΠΎΠ΅ ΠΈ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²ΠΎΠΌ Π΄Π»Ρ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΊΡΡΠΊΠ°Ρ .
ΠΠΎΡΠ΅ΠΌΡ? β’ ΠΠΎΠΊΡΠΌΠ΅Π½ΡΡ/ΠΠ±ΡΠ°Π·ΡΡ β’ ΠΠ΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β’ ΠΠ»Π°Π³ΠΈΠ½Ρ β’ ΠΡΠΏΡΡΡΠΈΡΡ Π½ΠΎΡΡ
ΠΡΠ΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅
HookState – ΡΡΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Redux, MOBX, ΠΎΡΠ΄Π°ΡΠΈ ΠΈ Ρ. Π. ΠΡΠΎΡΡΠΎ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ, ΠΏΡΠΎΡΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ, ΡΠ΄Π»ΠΈΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΡ , ΠΎΡΠ΅Π½Ρ Π³ΠΈΠ±ΠΊΠΈΡ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ ΡΡΡΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ Π² Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠ½ ΠΏΠΎΠ»ΡΡΠΈΠ» Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΡΠ±ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ? ΠΡΠΎΡΡΠΎ ΡΠΏΡΠΎΡΠΈΡΠ΅, ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ Π±ΠΈΠ»Π΅Ρ GitHub.
ΠΠΎΡΠ΅ΠΌΡ HookState.
hookstate.js.org
ΠΠΈΠ³ΡΠ°ΡΠΈΡ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 3
hookstate.js.org/docs/migrating-to-v3
ΠΠ±ΡΠ°Π·ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ/ΠΊΠΎΠ΄Π°
hookstate.js.org/docs/getting-started
ΠΠ΅ΠΌΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅
hookstate.js.org/demo-todolist
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
hookstate.js.org/docs/devtools
ΠΠ»Π°Π³ΠΈΠ½Ρ/ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ
hookstate.js.org/docs/extensions-overview
API Π‘ΡΡΠ»ΠΊΠ°
hookstate.js.org/docs/typedoc-hookstate-core
3. Rich-Markdown-ΡΠ΅Π΄Π°ΠΊΡΠΎΡ
Π Π΅Π°ΠΊΡΠΈΡ ΠΏΠΎ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Prosemirrror Enderation, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΡΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ Π² ΠΌΠΎΠ΄Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. Π Π΅Π΄Π°ΠΊΡΠΎΡ – ΡΡΠΎ WYSIWYG ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΡ ΡΠ°Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΡΡΠ»ΡΠΊΠΎΠ² Markdours Inline ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΠΎΡΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ.
ΠΠ°Π±ΡΠΎΡΠΊΠΈ/Rich-Markdown-ΡΠ΅Π΄Π°ΠΊΡΠΎΡ
Π Π΅Π°ΠΊΡΠΈΡ ΠΏΠΎ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΠΏΡΠΎΠ·Π΅ΡΠΎΠ»ΠΈΡΠΎΠ²ΠΊΠΎΠΉ, Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠΎΡΠΏΠ΅ΠΊΡΠΈΠΉ. Π₯ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΡΠΎ? ΠΠ°Π²Π΅ΡΡΠΈ Π°ΠΊΠΊΠ°ΡΠ½Ρ:
Π Π΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΡΠΎΠ·Π΅ΠΌΠΈΡΡ ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΡ ΠΠ°Π±ΡΠΎΡΠΊΠΈ Π ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π² ΠΌΠΎΠ΄Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ Π Π΅Π΄Π°ΠΊΡΠΎΡ – ΡΡΠΎ WYSIWYG ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΡΡΠ»ΡΠΊΠΎΠ² Markdack inline ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΠΎΡΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ.
ΠΠ°ΠΆΠ½Π°Ρ Π·Π°ΠΌΠ΅ΡΠΊΠ°: ΠΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ – Π½Π΅ ΠΏΡΡΠ°ΡΡΡ ΡΡΠ°ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠΌ Markown . ΠΠ½ ΠΏΠΎΡΡΡΠΎΠ΅Π½ Π΄Π»Ρ ΠΠ°Π±ΡΠΎΡΠΊΠΈ ΠΠ°Π·Π° Π·Π½Π°Π½ΠΈΠΉ, Π° Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ Π² Π²ΠΈΠ»ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ Π² ΡΠ²ΠΎΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ , ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠ΅Π½Ρ Π²ΠΎΠΊΡΡΠ³ Π½ΡΠΆΠ΄ Π½Π°Π±ΡΠΎΡΠΊΠ°.
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ
yarn add rich-markdown-editor
ΠΈΠ»ΠΈ
npm install rich-markdown-editor
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ , React-Dom ΠΈ Π‘ΡΠΈΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ²Π»ΡΡΡΡΡ Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Π Π°Π·Π²ΠΈΡΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.
ΠΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ
import Editor from "rich-markdown-editor";
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ ΡΠ΅ΠΏΠΎ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠ½ΠΈΠ³Ρ Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°ΠΌΠΈ Ρ ΠΡΡΠΆΠ° Π½Π°ΡΠ°ΡΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΈΡΠΎΠΊΠΈΠΉ ΡΠΏΠ΅ΠΊΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ
Ρ Π±Ρ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° …
4. Π’ΠΊΠ°Π½Ρ
Fabric.js – ΡΡΠΎ ΡΠ°ΠΌΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ HTML5 Canvas. ΠΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Ρ ΠΎΠ»ΡΡΠ°. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ SVG-Canvas.
Fabrics/FabeS.JS.
JavaScript Bulvas Library, SVG-To-Canvas (& Hanvas-to-svg) ΠΏΠ°ΡΡΠ΅Ρ
Π’ΠΊΠ°Π½Ρ
Fabric.js ΡΡΠΎ ΡΡΡΡΠΊΡΡΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ HTML5 Canvas. ΠΡΠΎ ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ Canvas ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ SVG-To-Canvas Parser ΠΡΠΊΠ°Π·
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ FaceS.js, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π½Π° Ρ ΠΎΠ»ΡΡΠ΅; ΠΠ±ΡΠ΅ΠΊΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΡΠΎΡΡΡΠ΅ Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΡΠΌΡ – ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ, ΠΊΡΡΠ³ΠΈ, ΡΠ»Π»ΠΈΠΏΡΡ, ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠΎΡΠΌΡ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΡΠΎΡΠ΅Π½ ΠΈΠ»ΠΈ ΡΡΡΡΡ ΠΏΡΠΎΡΡΡΡ ΠΏΡΡΠ΅ΠΉ. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ, Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΈ Π²ΡΠ°ΡΠ°ΡΡ ΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΌΡΡΡΡ; ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° – ΡΠ²Π΅Ρ, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ, Z-ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Ρ. Π. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ Π² ΡΠ΅Π»ΠΎΠΌ – Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΡΠΎΡΡΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΌΡΡΠΈ.
ΠΠ΅ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠΊΠ°Π½ΠΈ
Fabric.js ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΎΡΠΌΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ, ΠΊΡΡΠ³ΠΈ, ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠΎΡΠΌΡ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΏΡΡΠ΅ΠΉ, Π½Π° HTML ΠΠ»Π΅ΠΌΠ΅Π½Ρ Π½Π° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ JavaScript. Fabric.js Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ, ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ …
5. Tailwindcss.
Π£ΡΠΈΠ»ΠΈΡΠ° – ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° CSS Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
TailwindLabs/Hailwindcss.
Π£ΡΠΈΠ»ΠΈΡΠ° – ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° CSS Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΡ UI.
Π£ΡΠΈΠ»ΠΈΡΠ° – ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° CSS Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
ΠΠ»Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅ failwindcsss.com ΠΡΠΊΠ°Π·
Π‘ΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ
ΠΠ° ΠΏΠΎΠΌΠΎΡΡΡ, ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π»ΡΡΡΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΠΊ, ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠΈΠ³ΡΠ°Π΅Ρ ΠΎΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ ΠΏΠΎΠΈΡΠΊΡ:
ΠΠ±ΡΡΠ΄ΠΈΡΡ Ρ Π²ΠΎΡΡΠΎΠ²ΡΠ΅ CSS Π½Π° Github
ΠΠ»Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ Π±ΠΎΠ»ΡΠΎΠ²Π½ΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌΠΈ ΡΠ°ΠΌΠΊΠΈ:
ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ CSS CSS CSS
ΠΠΊΠ»Π°Π΄
ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΈ CSS Tailwind, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π½Π°Ρ Π‘ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΠΌ ΠΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° ΡΡΠ³Π° ΠΡΠΊΠ°Π·
6. ΠΠ°ΡΠ»Ρ
CASL – ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° JavaScript Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ·ΠΎΠΌΠΎΡΡΠ½ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΌ Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄ΠΎΡΡΡΠΏΡ
Π‘ΡΠ°Π»ΡΠ½ΡΠΉ/Casl.
CASL – ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° JavaScript Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ·ΠΎΠΌΠΎΡΡΠ½ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΌ Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄ΠΎΡΡΡΠΏΡ
CASL (ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ/kΓ¦sΙl/, ΠΊΠ°ΠΊ Π·Π°ΠΌΠΎΠΊ ) – ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° JavaScript javaScript javaScript ΠΈΠ·ΠΎΠΌΠΎΡΡΠ½ΠΎΠΉ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ°. ΠΠ½ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΡΠ½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠ΅ΡΠ΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠΌ ΠΈ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² API ΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ Π±Π°Π· Π΄Π°Π½Π½ΡΡ .
Π‘ΠΈΠ»ΡΠ½ΠΎ Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»Π΅Π½ ΠΠ°Π½ΠΊΠ°Π½ ΠΡΠΊΠ°Π·
Π€ΡΠ½ΠΊΡΠΈΠΈ
- Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΡΠΉ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠ΅ΡΠ΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠΌ ΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°ΡΡΠΈΠ±ΡΡΠ°.
- ΠΠ·ΠΎΠΌΠΎΡΡΠ½ΡΠΉ ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΠ½Π΅ ΠΈ Π±ΡΠΊΡΠ½Π΄Π°Ρ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ , ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ² Frontend ΠΈ Backend Orms Π»Π΅Π³ΠΊΠΈΠΉ
- ΠΠΈΠ΄Ρ ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ Π² Teadescript, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π²Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅ ΠΈ ΠΎΠΏΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠ½ΡΠΌ
- ΠΠ΅ΡΠ΅Π²ΠΎ Π¨Π°Π±Π»ΠΎΠ½ Π―Π΄ΡΠΎ Π²ΡΠ΅Π³ΠΎ 6 ΠΠ ΠΌΠΈΠ½Π·ΡΡΠΈΠ» ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΠ΅!
- ΠΠ΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈ Π΄Π΅Π»ΠΈΡΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ …
7. Π Π΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΠΈΡΡ
Π§ΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΡΡΡΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅Π½Π΄Π΅Ρ Π΄Π»Ρ ΡΠ²ΠΈΡΠΎΠ².
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄-ΡΠΈΠ³Π½Ρ/Π Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΠΈΡΡ
Π§ΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΡΡΡΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅Π½Π΄Π΅Ρ Π΄Π»Ρ ΡΠ²ΠΈΡΠΎΠ².
Π§ΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΡΡΡΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅Π½Π΄Π΅Ρ Π΄Π»Ρ ΡΠ²ΠΈΡΠΎΠ².
ΠΠΎΡΠ΅ΠΌΡ?
ΠΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ SDK Twitter ΡΠΆΠ°ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΈ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ. ΠΠ»Ρ Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΡ ΡΠ²ΠΈΡΠΎΠ² Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ (Π²ΠΊΠ»ΡΡΠ°Ρ SSR) ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΡΡΡΡΠ΅Π΅ 10-100x!
ΠΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Vercel Π½Π° Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Tweet Rindinging Π ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ Π½Π° Π΄Π²Π° ΠΏΡΠΎΡΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ NPM.
ΠΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅ Super.so ΠΡΠΊΠ°Π·
Π€ΡΠ½ΠΊΡΠΈΠΈ
β‘ ΠΡΡΡΡΠΎ – 10-100X Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²ΠΈΠ΄ΠΆΠ΅Ρ Twitter Iframe.π₯ Π’Π²Π΅ΡΠ΄ΠΎΠ΅ – ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅ Super.so , addpotion.so , ΠΠΎΠΈΡΠΊ Π² Π’Π²ΠΈΡΡΠ΅ΡΠ΅ ΠΈ React-Notion-X ΠΡΠΊΠ°Π·π ΠΡΠΎΡΡΠΎΠ΅ – Tymdercript + ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ
npm install react-static-tweets static-tweets date-fns # or yarn add react-static-tweets static-tweets date-fns
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°ΡΠ°ΡΡ – ΡΡΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΡΡ ΡΡΠΎΡΠΎΠ½Ρ Tweets (ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½Π΅ΡΠ΅Ρ Tweet Data On-Fly).
import React from 'react'
import { Tweet } from 'react-static-tweets'
export default Example({ tweetId }) => (
8. bcrypt.js.
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ BCRYPT Π² ΠΏΡΠΎΡΡΠΎΠΌ JavaScript Ρ Π½ΡΠ»Π΅Π²ΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ.
dcodeio/bcrypt.js.
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ BCRYPT Π² ΠΏΡΠΎΡΡΠΎΠΌ JavaScript Ρ Π½ΡΠ»Π΅Π²ΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ.
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ BCRYPT Π² JavaScript Ρ Π½ΡΠ»Π΅Π²ΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ. Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ ΠΊ C ++ BCRYPT ΠΡΠΈΠ²ΡΠ·ΠΊΠ° Π½Π° Node.js ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
Π‘ΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ
ΠΠΎΠΌΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΠΈ Π΄Π»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ ΠΏΡΠΈΡΡΡΠΏΠ° ΡΠ°Π΄ΡΠ³ΠΈ, BCRYPT – ΡΡΠΎ Π°Π΄Π°ΠΏΡΠΈΠ²Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ: ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ ΠΎΡΡΠ°Π΅ΡΡΡ ΡΡΡΠΎΠΉΡΠΈΠ²ΡΠΌ ΠΊ Π°ΡΠ°ΠΊΠ°ΠΌ ΠΏΠΎΠΈΡΠΊΠ° Π³ΡΡΠ±ΡΠ΅ ΡΠΈΠ»Ρ, Π΄Π°ΠΆΠ΅ Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ. ( ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ )
Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ BCRYPT.JS ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΎΠΉ C ++ BCRYPT, ΠΎΠ½ Π½Π°ΠΏΠΈΡΠ°Π½ Π² ΡΠΈΡΡΠΎΠΌ JavaScript ΠΈ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ( ΠΎΠΊΠΎΠ»ΠΎ 30% ), ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΎΠΊΡΠ°ΡΠ°Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π² ΡΠ°Π²Π½ΡΠΉ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° Π²Π²ΠΎΠ΄Π° ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 72 Π±Π°ΠΉΡΠ° (ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ utf8 Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄ΠΎ 4 Π±Π°ΠΉΡΠΎΠ²), Π° Π΄Π»ΠΈΠ½Π° ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Ρ ΡΡΠ΅ΠΉ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 60 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ° Ρ Commonjs ΠΈ AMD ΠΏΠΎΠ³ΡΡΠ·ΡΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΎΡΠΊΡΡΡΠ° Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎ ΠΊΠ°ΠΊ dcodeio.bcrypt. ΠΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΡΡΡΠΏΠ΅Π½.
9. Sass Boilerplate
ΠΠΎΡΠ΅Π»Ρ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² SASS Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ 7-1 ΠΎΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² SASS.
KittygiRaudel/Sass-Boilerplate
ΠΠΎΡΠ΅Π»Ρ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² SASS Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ 7-1 ΠΎΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² SASS.
ΠΡΠΎ ΠΎΠ±ΡΠ°Π·Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ 7-1 ΡΠ°Π±Π»ΠΎΠ½ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ SASS Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΠΉ.
ΠΠ°ΠΆΠ΄Π°Ρ ΠΏΠ°ΠΏΠΊΠ° ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΡ Readme.md Π€Π°ΠΉΠ», ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΡΠ΅Π»Ρ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Ρ ΠΎΡΡΡΡΠΏΠΎΠΌ
Sass Conversion.
ΠΡΠ° ΠΊΠΎΡΠ΅Π»ΡΠ½Π°Ρ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ .sass ΠΠ΅ΡΡΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ Π±Ρ Π±ΠΎΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΎΠ±Π΅ Π²Π΅ΡΡΠΈΠΈ Π±Π΅Π· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ±ΠΎΡΠΊΠΈ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΡΡΡ Π±ΠΎΠΉΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΠΊΡ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Ρ ΠΎΡΡΡΡΠΏΠΎΠΌ Sass.
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, ΠΎΡΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅:
sass-convert -F scss -T sass -i -R ./ && find . -iname "*.scss" -exec bash -c 'mv "$0" "${0%\.scss}.sass"' {} \
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Ρ ΡΠ·Π»ΠΎΠΌ
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π£Π·Π΅Π»-ΡΠ°ΡΡ – ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΡΡΡ ΠΊΠΎΡΠ΅Π»ΡΠ½ΠΎΠΉ, Π½ΡΠΆΠ½ΠΎ:
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ
Π£Π·Π΅Π»-ΡΠ°ΡΡΠΡΠ»ΠΈ Π΅ΡΠ΅ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ:
npm install -g node-sass
- ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Ρ …
10. ΠΠ΅Π²ΠΈΠΊΠΎΠ½Ρ
ΠΠ»ΠΎΠΊΠΎΠ»ΡΠ½ΡΠΉ ΡΡΠΈΡΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Devicons ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ 85 Π²Π΅ΠΊΡΠΎΡΠ½ΡΡ ΠΎΡΡΡΡΡ Π³Π»ΠΈΡΠΎΠ². ΠΠ΅Π²ΠΈΠΊΠΎΠ½Ρ ICONIC FORT FORD Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ ΠΈ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΠΎΠ΄ MIT.
Vorillaz/DevIcons.
ΠΠ΅Π²ΠΈΠΊΠΎΠ½Π½Ρ – ΠΊΡΠ»ΡΡΠΎΠ²ΡΠΉ ΡΡΠΈΡΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²
ΠΠ½Π°ΠΊΠΎΠ»ΡΠ½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΈΡΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΠ΄ Jedis, Ninjas, Httpsters, Evangeglets ΠΈ Nerds.
DeviCons – ΡΡΠΎ ΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠ΅ΠΊ ΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΡΡΠΈΡΡ, Π³ΠΎΡΠΎΠ²ΡΠΉ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Ρ Π²Π°ΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. Π‘ΠΎΠ·Π΄Π°Π½, ΡΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ Π’Π΅ΠΎΠ΄ΠΎΡ ΠΠΎΡΠΈΠ»Π»Ρ DeviCons ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ 85 Π²Π΅ΠΊΡΠΎΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΎΡΡΡΡΡ Glyphs Devicons Kevicons Icone Food Bed Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ MIT ΠΡΠΊΠ°Π·
Spiricons Icon Set 1.8.0
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Devicons Ρ ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΠ½Π΅ΠΉΠΊΠΎΠΉ ΠΊΠΎΠ΄Π°.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠ°ΡΠ½ΡΠΌ jsdelivr. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄Π΅Π²ΠΈΠΊΠΎΠ½Ρ Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π² Π Π°Π·Π΄Π΅Π» HTML Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
< ΡΡΡΠ»ΠΊΠ° href = ‘//cdn.jsdelivr.net/npm/devicons @ 8.0/css/devicons.min.css’>
ΠΠ°ΡΠΈΠ½Π°Ρ
- Π‘ΠΊΠ°ΡΠ°ΡΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
- Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅
devicons.cssΠΊ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ - Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅
ΡΡΠΈΡΡΡΠΠ°ΠΏΠΊΠ° ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ - Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ URL-Π°Π΄ΡΠ΅ΡΠ° ΡΡΠΈΡΡΠ° Π²Π½ΡΡΡΠΈ
devicons.cssΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π°ΡΡΠΈΡΡΡΠΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. - ΠΠΊΠ»ΡΡΠΈΡΠ΅ ΡΡΡΠ»ΠΊΡ Π½Π°
devicons.cssΠ€Π°ΠΉΠ» ΠΈΠ· Π»ΡΠ±ΠΎΠΉ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΡΠΎΠ΅ΠΊΡΡ Π½Π° ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΡΠ»Π»Π΅ΡΠ΅Π½Ρ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Π½Π° www.iainfreestone.com Π§ΡΠΎΠ±Ρ Π²Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΠΎΠΏΡΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ ΡΡΡ ΡΡΠ°ΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π‘Π»Π΅Π΄ΡΠΉ Π·Π° ΠΌΠ½ΠΎΠΉ Π Twitter, Π³Π΄Π΅ Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ ΠΏΡΠ±Π»ΠΈΠΊΡΡ ΡΠΎΠ²Π΅ΡΡ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΡΡΠ°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ HTML, CSS ΠΈ JavaScript.
ΠΡΠΈΠ³ΠΈΠ½Π°Π»: “https://dev.to/iainfreestone/10-trending-projects-on-github-for-web-developers-19th-february-2021-hpi”