https://github.com/thwiseman/paintwithfriends
A C++ collaborative painting app with built in text and video chat.
https://github.com/thwiseman/paintwithfriends
collaboration cpp network-programming painting server video-streaming
Last synced: 10 months ago
JSON representation
A C++ collaborative painting app with built in text and video chat.
- Host: GitHub
- URL: https://github.com/thwiseman/paintwithfriends
- Owner: THWiseman
- Created: 2022-01-04T15:44:23.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-01-05T01:36:14.000Z (over 4 years ago)
- Last Synced: 2025-06-21T18:14:25.257Z (about 1 year ago)
- Topics: collaboration, cpp, network-programming, painting, server, video-streaming
- Homepage:
- Size: 5.86 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PaintWithFriends
- A fully featured collaborative painting app writen in C++ that features built in networking, text, audio, and video chat.
- Created Fall 2021 for Mike Shah's CS5500 Software Engineering Course at Northeastern University. By request of the professor, the source code is not publicly available.
- Authors are Tom Wiseman, Dennis Ping, Michael Maquera, and Rajwinder Singh.

# Features
- Multiple paint tools, undo/redo, color picker, export to PNG, screenshot, auto-reconnect, and more!


- Independent server application that manages multiple TCP and UDP connections for any number of clients.
- Video and Audio Chat
- Text Chat

- Windows/MacOS Compatible
# UML

# External Libraries
- SFML Library used for capturing user input, creating and displaying a Window, sound capture/output, and sending/recieving custom network packets.
- Nuklear Library used for certain GUI elements
- OpenCV used for video capture and compression.
- CMake used to build the C++ code.