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
- Real-time text-based communication
- Sharing of files, images, and rich code snippets
- Support for markdown with syntax highlighting
- Protection against XSS attacks
- Integrated video conferencing capabilities
- Scheduling and joining of meetings
- Screen sharing and real-time discussions
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.
- Built-in code editor with syntax highlighting and autocompletion
- Compiler/interpreter for various languages
- Run code and view output without leaving the application
- Real-time audio communication with WebSockets
- Collaborative whiteboard for drawing and diagramming
- Real-time updates and multiple users can draw simultaneously
- Export drawings as images or PDFs
-
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:
- Clone this repository to your local machine. Cloning a repository
↗️ - Navigate to the project directory in your terminal. Navigating the command line
↗️
- Clone this repository to your local machine. Cloning a repository
-
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
│ └── ...
└── ...
- Navigate to the
server
directory. - Run
npm install
to install the project's dependencies. - Run
npm run dev
to start the development server.
- In a separate terminal, navigate to the
client
directory. - Run
npm install
to install the project's dependencies. - Run
npm run start
to start the development server.
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 | |
---|---|
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 |
- the icon "loading" is provided by loading.io
- Logo Inspiration by DALLE (Generated by Project Maintainer via custom prompt)
- Default Background by DALLE (Generated by Project Maintainer via custom prompt)
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.
Bhargav Modak |
Vishal Shinde |
---|---|
E-Mail |
E-Mail |