Draw it - гэта праграма для сумеснай працы ў рэжыме рэальнага часу, распрацаваная з выкарыстаннем Flutter для інтэрфейсу і Node.js + Express з WebSocket для сінхранізацыі сервераў. Прыкладанне дазваляе некалькім карыстальнікам адначасова маляваць на агульнай дошцы, дэманструючы вопыт як у кросплатформеннай распрацоўцы карыстацкага інтэрфейсу, так і ў сеткавай сувязі ў рэжыме рэальнага часу.
🚀 Асноўная мэта:
Уключыце бясшвоўнае супрацоўніцтва ў рэжыме рэальнага часу на агульнай чарцёжнай дошцы з дапамогай прадукцыйнай архітэктуры, кіраванай падзеямі.
🧱 Тэхнічны стэк:
Flutter (Dart): кросплатформенны мабільны інтэрфейс з апрацоўкай жэстаў і індывідуальным візуалізацыяй
Node.js + Express.js: бэкэнд-сервер з падтрымкай WebSocket для пастаяннай двухнакіраванай сувязі
WebSocket (ws): для сінхранізацыі штрыхоў паміж карыстальнікамі ў рэжыме рэальнага часу
CustomPainter: Эфектыўнае пакадравае маляванне на палатне
Апрацоўшчык дазволаў & RepaintBoundary: захавайце чарцяжы ў выглядзе малюнкаў на прыладзе
🖌️ Асноўныя функцыі:
✍️ Агульны малюнак у рэжыме рэальнага часу: усе ўдзельнікі імгненна бачаць штрыхі адзін аднаго з дапамогай трансляцыі WebSocket.
📡 Сервер WebSocket без захавання стану: Лёгкі сервер Node.js падтрымлівае актыўныя сокетныя злучэнні і рэтранслюе падзеі інсультаў з нізкай затрымкай.
🎨 Canvas Engine: сэнсарныя жэсты пераўтвараюцца ў вектарныя шляхі, якія можна маляваць, і адлюстроўваюцца з дапамогай CustomPainter ад Flutter.
📁 Экспарт палатна: Карыстальнікі могуць захоўваць свае творы ў выглядзе выявы
🔧 Модульная архітэктура: асобныя ўзроўні для логікі малявання, серверных падзей і інтэграцыі платформы.