https://github.com/anchovycation/pingu-api
The best way to watch YouTube by video chatting with friends.
https://github.com/anchovycation/pingu-api
chat react socket-io video-chat webrtc youtube
Last synced: 7 months ago
JSON representation
The best way to watch YouTube by video chatting with friends.
- Host: GitHub
- URL: https://github.com/anchovycation/pingu-api
- Owner: anchovycation
- License: gpl-3.0
- Created: 2022-01-27T10:18:53.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-18T17:20:46.000Z (over 2 years ago)
- Last Synced: 2023-03-06T04:01:02.754Z (over 2 years ago)
- Topics: chat, react, socket-io, video-chat, webrtc, youtube
- Language: JavaScript
- Homepage:
- Size: 868 KB
- Stars: 2
- Watchers: 0
- Forks: 2
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
PinguThe best way to watch YouTube by video chatting with friends.
> It is **not suitable** for **use** as it is still in the **development** stage.
## Introduce
+ [Roadmap](#roadmap)
+ [Technologies planned to be used](#technologies-planned-to-be-used)
+ [Folder structure](#folder-structure)
+ [Usage](#usage)
+ [Contributing](#contributing)
+ [Contributors](#contributors)
+ [License](#license)## Roadmap
You can see what we've done before and what we will work on in the future.**development**
- [ ] Chat
- [ ] Embeded YouTube
- [ ] Voice and Video chat
- [ ] Basic test
- [ ] Dockerize, CI/CD, GitHub Bots, pre-production**production**
- [ ] Admin panel### Technologies planned to be used
Node.js, TypeScript(optional), Nest.js, Socket.io, Redis, MongoDB, Peer.js## Folder structure
```bash
.
├── CONTRIBUTING.md # Contributing document
├── dist # Build folder
├── LICENSE
├── nodemon.json
├── package.json
├── package-lock.json
├── README.md
├── sample.env
└── src
├── Constants
│ ├── index.js
│ └── SocketEvents.js
├── Events # socket events handlers, /index.js
│ ├── index.js
│ └── System
│ └── index.js
├── server.js
└── Socket.js```
## Usage
## Install
```bash
git clone https://github.com/anchovycation/pingu-api.git
cd pingu-api
```## Setup
Install dependencies
```bash
npm install
```## Set environment variables
Copy [sample.env](./sample.env) file then changes values.
```bash
cp sample.env .env
```## Start
### Production
```bash
npm start
```
### Develpoment
Develop using hotreload```bash
npm run start:dev
```
## Lint
```bash
npm run lint
```
**Fix lint errors**:
```bash
npm run lint:fix
```
## Build Code
```bash
npm run build
```
## Contributing
If you want to contribute to the project, please first **check** if the work you are doing is already an **issue**. If there is an issue and there is someone assigned to the issue, **contact that person**. If there is no issue, you can send your development to the project managers by opening a **pull request**. Please read [CONTRIBUTING.md](./CONTRIBUTING.md)## License
[GNU GENERAL PUBLIC LICENSE Version 3](./LICENSE)