Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/atharmohammad/code-n-collab-server

Code-N-Collab Server is the Backend for the Code-N-Collab for real-time exchange of data between users
https://github.com/atharmohammad/code-n-collab-server

axios codeforces docker expressjs javascript mongodb nodejs puppeteer socket-io

Last synced: about 20 hours ago
JSON representation

Code-N-Collab Server is the Backend for the Code-N-Collab for real-time exchange of data between users

Awesome Lists containing this project

README

        








[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![MIT License][license-shield]][license-url]
[![Issues][issues-shield]][issues-url]
[![LinkedIn][linkedin-shield]][linkedin-url]

Table of Contents



  1. About



  2. Getting Started



  3. Contributing

  4. Contact

  5. Resources

  6. License
























Collaboration


# 🔖 About
Code-N-Collab server is backend for Code-N-Collab , It make Code-N-Collab real-time collaborative using sockets and also serves as backend for blogs

### Website
[Code-N-Collab](https://code-n-collab.netlify.app/)

## 🚀 Features
It provides users with :-
- Real-time code editor : Users can collaborate with their team on issues and solve CP problems using a real-time code-editor(like Google Docs)

- Lockout Championship : For Cp lovers, they can compete in a lockout championships with their friends to and challenge your friends for championship,filter problems with preferred difficulty and improve you CP skills

- Blogs : To find new people and share your knowledge , platform provides users blogs to write learn and share

## 🔥 Getting Started

### Prerequisites

- Reactjs
- Nodejs
- Google Cloud Platform

#### Setup your free GCP account for google Oauth
- https://support.google.com/cloud/answer/6158849?hl=en

- Setup API&Credentials for Web Application

- Provide a Redirect URI in the Credentials(The redirect_URI will be used to redirect to the page after login with google,in below environment variable example we have setup redirect_URI=http://localhost:3000/homepage/ , using port 3000 you can use any port but make sure to add /homepage after that to redirect to correct route)

- copy and

#### Setup your MONGO_DB atlas
- Atlas Docs
- get the from your cluster , you have to use it in env vars

#### Setup Environment variables
- you can declare your env vars using dotenv like below :

```
CORS_ORIGIN=*
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
redirect_URI=http://localhost:3000/homepage/
BaseURI=http://localhost:8080/
MONGO_DB_URL=
COMPILE_CLIENT_ID1=
COMPILE_CLIENT_SECRET1=
COMPILE_CLIENT_ID2=
COMPILE_CLIENT_SECRET2=
COMPILE_CLIENT_ID3=
COMPILE_CLIENT_SECRET3=
COMPILE_CLIENT_ID4=
COMPILE_CLIENT_SECRET4=

```
- or you can declare your env vars in nodemon.json if you are using nodemon for development like below:
```
{
"env":{
"CORS_ORIGIN":"*",
"GOOGLE_CLIENT_ID": "",
"GOOGLE_CLIENT_SECRET": "",
"redirect_URI" : "http://localhost:3000/homepage/",
"BaseURI":"http://localhost:8080/",
"MONGO_DB_URL":"",
"COMPILE_CLIENT_ID1":"",
"COMPILE_CLIENT_SECRET1":"",
"COMPILE_CLIENT_ID2":"",
"COMPILE_CLIENT_SECRET2":"",
"COMPILE_CLIENT_ID3":"",
"COMPILE_CLIENT_SECRET3":"",
"COMPILE_CLIENT_ID4":"",
"COMPILE_CLIENT_SECRET4":""
}
}

```

### Installation

```
$ git clone https://github.com//Code-N-Collab-Server.git
$ cd Code-N-Collab-Server
$ git remote add upstream https://github.com/atharmohammad/Code-N-Collab-Server.git
$ npm install

$ npm start // if you are using dotenv

//or

$ npm run dev // if you are using nodemon.json

```

## 💁 Contribution guidelines

we encourage organizations and individuals to contribute requirements, documentation, issues, new templates, and code.
For code contributions, read :

- The Code of Conduct
- The Contribution Guidelines

## 📲 Contact

Mohd Athar - [email protected]


Adnan Shamsi - [email protected]

## 📚 Resources
- Socket.Io Documentation
- Convergence Docs
- Atlas Docs
- React-Codemirror Editor Docs
- Mongoose Docs

## License
Apache License 2.0

[contributors-shield]: https://img.shields.io/github/contributors/atharmohammad/Code-N-Collab-Server.svg?style=for-the-badge
[contributors-url]: https://github.com/atharmohammad/Code-N-Collab-Server/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/atharmohammad/Code-N-Collab-Server.svg?style=for-the-badge
[forks-url]: https://github.com/atharmohammad/Code-N-Collab-Server/network/members
[stars-shield]: https://img.shields.io/github/stars/atharmohammad/Code-N-Collab-Server.svg?style=for-the-badge
[stars-url]: https://github.com/atharmohammad/Code-N-Collab-Server/stargazers
[issues-shield]: https://img.shields.io/github/issues/atharmohammad/Code-N-Collab-Server.svg?style=for-the-badge
[issues-url]: https://github.com/atharmohammad/Code-N-Collab-Server/issues
[license-shield]: https://img.shields.io/github/license/atharmohammad/Code-N-Collab-Server.svg?style=for-the-badge
[license-url]: https://github.com/atharmohammad/Code-N-Collab-Server/blob/master/LICENSE
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
[linkedin-url]: https://www.linkedin.com/in/athar-mohammad-34068a157/