Evozone / dev-call

A place for student developers to collaborate and learn together.

Home Page:https://dev-chat-plus.netlify.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo Dev Chat +

Dev Chat+ is a Web2 Application specifically designed to cater to the needs of professional users such as software developers, designers, and project managers. The application aims to provide a comprehensive platform for collaboration and communication among professionals working on various projects.

Dev Chat+ was a web application developed as a Mini Project for Semesters 5 and 6 of Year 3 in Computer Engineering.

List of Contents

Features

Base Features

Chat

  • Real-time text-based communication
  • Sharing of files, images, and rich code snippets
  • Support for markdown with syntax highlighting
  • Protection against XSS attacks

Meet

  • Integrated video conferencing capabilities
  • Scheduling and joining of meetings
  • Screen sharing and real-time discussions

Workspaces

Workspaces are tools for collaborating on projects. Each workspace has its own call, code, and draw features. Users can create multiple workspaces and invite others to collaborate. Workspaces are saved to the cloud, allowing access from any device.

Code

  • Built-in code editor with syntax highlighting and autocompletion
  • Compiler/interpreter for various languages
  • Run code and view output without leaving the application

Call

  • Real-time audio communication with WebSockets

Draw

  • Collaborative whiteboard for drawing and diagramming
  • Real-time updates and multiple users can draw simultaneously
  • Export drawings as images or PDFs

Installation

  • This project was built with create-react-app, so you'll need to have Node.js and npm installed on your machine to run it.

  • Check out How to Install Node.js and npm for instructions on how to install them.

  • Once you have those installed, you can follow these steps to get the project up and running:

    1. Clone this repository to your local machine. Cloning a repository ↗️
    2. Navigate to the project directory in your terminal. Navigating the command line ↗️
  • Note that you will also need to obtain the environment variables for the server and client in order to run the project. To do this, please contact one of the project maintainers listed below.

  • Add the environment variables to a .env file in the server and client directories. The file structure should look like this:

dev-call
├── client
│   ├── .env
│   ├── package.json
│   └── ...
├── server
│   ├── .env
│   ├── package.json
│   └── ...
└── ...

Server

  1. Navigate to the server directory.
  2. Run npm install to install the project's dependencies.
  3. Run npm run dev to start the development server.

Client

  1. In a separate terminal, navigate to the client directory.
  2. Run npm install to install the project's dependencies.
  3. Run npm run start to start the development server.

Usage

Once you have the project running, you can access it by navigating to http://localhost:3000 in your web browser. From there, you can use the chat, meet, and workspace features to collaborate with others on your projects.

If you are using Brave Browser, you may need to disable the built-in shields in order to use the Google Login services. To do this, click on the Brave icon in the top-right corner of the browser and toggle the shields off.

If you encounter any issues or have any questions, please don't hesitate to reach out to the project maintainers listed below.


Technologies Used

Technologies
Frontend React, Material-UI, Firebase, Socket.io
Backend Firebase Firestore, Firebase Storage (for images), Jitsi Meet SDKs
Database Firebase Firestore
APIs Judge0 for code interpreting

Attribution


Contributing

Thank you for your interest in contributing to this project! At this time, we are not accepting pull requests from external contributors. However, we appreciate your support and welcome any feedback or suggestions you may have. If you have any questions or concerns, please feel free to reach out to us below.


Project Maintainers

Bhargav Modak
Bhargav Modak
Vishal Shinde
Vishal Shinde
E-Mail ↗️ E-Mail ↗️
Twitter Twitter

About

A place for student developers to collaborate and learn together.

https://dev-chat-plus.netlify.app/

License:MIT License


Languages

Language:JavaScript 97.8%Language:HTML 1.4%Language:CSS 0.8%