← Back to Projects Web and Software

Collaborative Painter

A real time collaborative drawing platform built in DLang using SDL and UDP networking. Multiple users can paint, chat, and share a dynamic canvas together with synchronized updates across all connected clients.

Quick Insights

Introduction

This project was developed as part of the Foundations of Software Engineering course at Northeastern University. Our team of 4 people designed and implemented a desktop application that enables users to collaboratively paint on a shared canvas while communicating in real time through an integrated chat panel.

The client requested a high performance, portable, low latency collaborative system. DLang was chosen due to its performance and memory safety benefits, along with its use in large scale systems such as Facebook infrastructure tools. SDL and gtkD enabled rendering and UI development, while UDP allowed lightweight real time message broadcasting. Core features were unit tested using unit threaded testing to ensure stability.

Key Outcomes and Learnings

This project demonstrated distributed system design, low latency networking and event driven programming. It also required strong team coordination, sprint based planning and the adoption of new languages and tools aligned with client constraints.