Using PySide6 to make a Whiteboard with over-the-network capabilities.
- Can draw
- Can erase
- Can change size of the pen using the dial
- Can change colour
- Can clear the screen
- Undo & Redo
- Open new whiteboard
- Save and load whiteboards
- Be able to draw shapes (ellipse, rectangle and straight line) using the mouse
- Have users working on the same whiteboard from different PCs
In this, have a main server as a TCP server, then connect to main server using QTcpSocket from the clients.
Have redis store temporary info for sessions i.e. host and clients etc
- Have pages within a single whiteboard
- Give access to users (Google Drive-esque)
- See about multithreading and proper message framing
- Shabbar Adamjee
- Main UI
- Core functions (freehand drawing, erasing)
- Message framing for network communication
- Hussain Ceyloni
- Straight line, ellipse, and rectangle functionality
- Save/Save As, Load, Open functions
- Open new board function
- Atharva Ghanekar
- Established main server and client communication
- Message framing for network communication
- Abubakar Siddiq
- Undo & redo
- Login screen and function
- Database (redis) handling
Optional: Have a virtual environment:
python -m venv <name of environemt>
<name of environment>\Scripts\activate
source <name of environment>/bin/activate
Next, install pyside6
pip install pyside6
Run main.py (from PyCharm for now)