10+
рмбрм╛рмЙрмирм▓рнЛрмб
рммрм┐рм╖рнЯрммрм╕рнНрмдрнБ рморнВрм▓рнНрнЯрм╛рмЩрнНрмХрми
USK: 16 рммрм░рнНрм╖рм░рнБ рмЕрмзрм┐рмХ
рм╕рнНрмХрнНрм░рм┐рмирм╕рмЯрнН рмЫрммрм┐
рм╕рнНрмХрнНрм░рм┐рмирм╕рмЯрнН рмЫрммрм┐

рмПрм╣рм┐ рмЖрмкрнН рммрм┐рм╖рнЯрм░рнЗ

Draw it is a real-time collaborative canvas application developed using Flutter for the frontend and Node.js + Express with WebSocket for backend synchronization. The app allows multiple users to draw simultaneously on a shared board, demonstrating expertise in both cross-platform UI development and real-time network communication.

ЁЯЪА Key Objective:
Enable seamless, real-time collaboration on a shared drawing board using a performant, event-driven architecture.

ЁЯз▒ Tech Stack:

Flutter (Dart): Cross-platform mobile frontend with gesture handling and custom rendering

Node.js + Express.js: Backend server with WebSocket support for persistent bi-directional communication

WebSocket (ws): For real-time synchronization of strokes across users

CustomPainter: Efficient frame-by-frame drawing on canvas

Permission Handler & RepaintBoundary: Save drawings as images on device

ЁЯЦМя╕П Core Features:

тЬНя╕П Shared Real-Time Drawing: All participants see each other's strokes instantly using WebSocket broadcast.

ЁЯУб Stateless WebSocket Server: Lightweight Node.js server maintains active socket connections and relays stroke events with low latency.

ЁЯОи Canvas Engine: Touch gestures are converted into drawable vector paths and rendered using Flutter's CustomPainter.

ЁЯУБ Export Canvas: Users can save their artwork as an image

ЁЯФз Modular Architecture: Separate layers for drawing logic, server events, and platform integration.
рмЧрмд рмЕрмкрмбрнЗрмЯрм░ рм╕рморнЯ
рм╕рнЗрмкрнНрмЯрнЗрморнНрммрм░ 28, 2025

рмбрм╛рмЯрм╛ рм╕рнБрм░рмХрнНрм╖рм╛

рмбрнЗрмнрнЗрм▓рмкрм░рморм╛рмирнЗ рмЖрмкрмгрмЩрнНрмХ рмбрм╛рмЯрм╛рмХрнБ рмХрм┐рмкрм░рм┐ рм╕рмВрмЧрнНрм░рм╣ рмПрммрмВ рм╕рнЗрнЯрм╛рм░ рмХрм░рмирнНрмдрм┐ рм╕рнЗрм╣рм┐ рмзрм╛рм░рмгрм╛ рм╕рм╣рм┐рмд рм╕рнБрм░рмХрнНрм╖рм╛ рмЖрм░рморнНрмн рм╣рнБрмПред рмЖрмкрмгрмЩрнНрмХ рммрнНрнЯрммрм╣рм╛рм░, рмЕрмЮрнНрмЪрм│ рмПрммрмВ рммрнЯрм╕ рмЖрмзрм╛рм░рм░рнЗ, рмбрм╛рмЯрм╛ рмЧрнЛрмкрмирнАрнЯрмдрм╛ рмУ рм╕рнБрм░рмХрнНрм╖рм╛ рмкрнНрм░рм╛рмХрнНрмЯрм┐рм╕ рмнрм┐рмирнНрми рм╣рнЛрмЗрмкрм╛рм░рнЗред рмбрнЗрмнрнЗрм▓рмкрм░ рмПрм╣рм┐ рм╕рнВрмЪрмирм╛ рмкрнНрм░рмжрм╛рми рмХрм░рм┐рмЫрмирнНрмдрм┐ рмПрммрмВ рм╕рнЗ рм╕рморнЯрм╛рмирнБрм╕рм╛рм░рнЗ рмПрм╣рм╛рмХрнБ рмЕрмкрмбрнЗрмЯ рмХрм░рм┐рмкрм╛рм░рмирнНрмдрм┐ред
рмдрнГрмдрнАрнЯ рмкрмХрнНрм╖рмЧрнБрнЬрм┐рмХ рм╕рм╣ рмХрнМрмгрм╕рм┐ рмбрм╛рмЯрм╛ рм╕рнЗрнЯрм╛рм░ рмХрм░рм╛рмпрм╛рмЗрмирм╛рм╣рм┐рмБ
рмбрнЗрмнрнЗрм▓рмкрм░рморм╛рмирнЗ рмХрм┐рмкрм░рм┐ рм╕рнЗрнЯрм╛рм░рм┐рмВрм░ рмШрнЛрм╖рмгрм╛ рмХрм░рмирнНрмдрм┐ рм╕рнЗ рммрм┐рм╖рнЯрм░рнЗ рмЕрмзрм┐рмХ рмЬрм╛рмгрмирнНрмдрнБ
рмХрнМрмгрм╕рм┐ рмбрм╛рмЯрм╛ рм╕рмВрмЧрнНрм░рм╣ рмХрм░рм╛рмпрм╛рмЗрмирм╛рм╣рм┐рмБ
рмбрнЗрмнрнЗрм▓рмкрм░рморм╛рмирнЗ рмХрм┐рмкрм░рм┐ рм╕рмВрмЧрнНрм░рм╣рм░ рмШрнЛрм╖рмгрм╛ рмХрм░рмирнНрмдрм┐ рм╕рнЗ рммрм┐рм╖рнЯрм░рнЗ рмЕрмзрм┐рмХ рмЬрм╛рмгрмирнНрмдрнБ
Play рмкрм░рм┐рммрм╛рм░рмЧрнБрнЬрм┐рмХ рм╕рм╣ рм╕рморнНрммрмирнНрмзрм┐рмд рмирнАрмдрм┐рмХрнБ рмЕрмирнБрм╕рм░рмг рмХрм░рм┐рммрм╛ рмкрм╛рмЗрмБ рмкрнНрм░рмдрм┐рм╢рнНрм░рнБрмдрм┐рммрмжрнНрмз

рмирнВрмЖ рмХрмг рмЕрмЫрм┐

Minor Changes

рмЖрмк рм╕рмкрнЛрм░рнНрмЯ

рмбрнЗрмнрнЗрм▓рмкрм░рмЩрнНрмХ рммрм┐рм╖рнЯрм░рнЗ
Purvesh Dnyaneshwar Shinde
droiddecor@gmail.com
Sector 24, Juinagar Sanpada Mahalaxmi CHS, B-22, 3-14 Navi Mumbai, Thane, Maharashtra 400705 India
undefined

Droid Decor рмжрнНрн▒рм╛рм░рм╛ рмЕрмзрм┐рмХ