Skip to content

This is the major project work given to me by Dendrite.ai

Notifications You must be signed in to change notification settings

olifarhaan/board-verse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Board Verse | A Real Time Collaborative Whiteboard Application

The Whiteboard Application is a collaborative drawing tool that allows users to create and join real-time whiteboard sessions. With a focus on simplicity and user experience, this application enables users to draw using various colors and brush sizes, undo/redo actions, and save the whiteboard content as images or PDFs. The implementation includes secure user authentication using Keycloak, ensuring that only authorized users can access and contribute to whiteboard sessions.

Key Features

Create and join whiteboard sessions. Drawing functionality with color and brush size options. Undo/redo actions for seamless user experience. Real-time cursor movements for connected users. Save whiteboard content as images or PDFs. Responsive design for both desktop and mobile devices.

Technologies Used

  1. React for front-end development.

  2. WebSocket, Node Express for back-end development.

  3. Keycloak for authentication.

  4. Native canvas for drawing capabilities. Keycloak via Docker for secure user authentication.

  5. Bootstrap 5.0 for a clean and fluidic layout. For detailed setup instructions, feature documentation, and screenshots, please refer to the respective sections below.

Full Demo

Draw Verse Demo Video

Setting up the Project

Keycloak setup

  1. Run this Docker commaand to set up Keycloak on your local system
docker run -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:24.0.0 start-dev
  1. Set up the account with the following configuration
Keycloak({
  url: "http://localhost:8080",
  realm: "whiteboard-realm-react",
  clientId: "whiteboard-client-react",
});

  1. Change the Keycloak public key to the .env file from your dashboard.

  2. Go to http:localhost:8080 to check whether it is correctly setup or not.

  3. Refer to this Keycloak document for setup incase of any error.

Frontend & Backend setup

  1. Run this command in your local computer to clone the repo.
git clone https://github.com/olifarhaan/board-verse.git

  1. Open the folder with an IDE (VSCode preferred)

  2. Open the terminal and run cd client and then npm i to install the dependency of the front end

  3. Then, open another terminal and run cd api and then npm i to install the dependency of the backend end

  4. Run npm run dev on both the terminal

  5. Go to http://localhost:5173

About

This is the major project work given to me by Dendrite.ai

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages