Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alphadose/synchron
A karaoke app in virtual reality
https://github.com/alphadose/synchron
aframe css html javascript nodejs peerjs socket-io
Last synced: 20 days ago
JSON representation
A karaoke app in virtual reality
- Host: GitHub
- URL: https://github.com/alphadose/synchron
- Owner: alphadose
- License: mit
- Created: 2018-02-23T04:01:44.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-11-15T14:27:41.000Z (about 5 years ago)
- Last Synced: 2024-10-11T15:17:13.553Z (about 1 month ago)
- Topics: aframe, css, html, javascript, nodejs, peerjs, socket-io
- Language: JavaScript
- Size: 51 MB
- Stars: 12
- Watchers: 3
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Synchron
A Karaoke application made in Virtual Reality.
You can visit the application [here](https://synchron.ml/)
If you are using the application from your phone, the phone's gyroscope will control the camera.
If you are using a computer, you would have to drag the mouse pointer around to control the camera.
## Features
* This application is multiplayer so you can enjoy the Karaoke experience with your friends.
* Users in a room can hear each other sing in real-time.
* The music player is synchronised across all users in a room.
(If one user pauses the music, it gets paused for everyone in that room)
* Users can see each other's avatars for a real-life karaoke experience.* The room also has the feature of 3D surround sound.
( The volume increases/decreases proportionately with respect to the distance from the speakers)## Setup
```bash
$ git clone https://github.com/alphadose/Synchron
$ cd Synchron
$ npm install
$ node server.js
```## A brief guide to get started
There are four buttons in a panel at the end of the V-Room. Hovering over them with the a-frame pointer
would execute the given action.* Play -> Will start playing the song in the queue
* Pause -> Will pause/resume the song
* Next -> Will play the next song in the queue
* Playlist -> Shows the playlist for adding songs to the queue### Notes
* You would need to add songs to the queue before playing them.
* Executing the above actions would reflect on all users in the same room.## Tech Stack
* **Node.js** as the backend language
* **Express.js** for routing
* **Peer.js** for establishing peer-to-peer connections
* **Socket.io** for synchronising the music player across all users in a room
* **A-Frame** for building the Virtual Reality environment