/streamSync

streamSync is a browser extension that enables real-time voice interactions between hosts and participants.

Primary LanguageTypeScript

StreamSync

Screenshot 2024-09-12 195708

StreamSync integrates voice with super chats for a more interactive streaming experience.

Live Demo: https://stream-sync.devrohit.tech/
New Ui (incomplete): https://stream-sync-ui-sample.vercel.app

Table of Contents

Introduction

StreamSync is a tool designed for creators and their audience, offering a more interactive alternative to traditional super chats limited to text messages. With StreamSync, users can send super chats, but with a unique twist: if the creator is interested, they can directly speak with the audience member through our extension.

Currently, we support Solana (with plans to integrate more currencies). Users can send Solana to creators, and similar to traditional super chats, messages from those who pay are prioritized—those who contribute more will have their messages featured higher. However, the payment will only be debited from the user’s account once they’ve had a conversation with the creator.

This tool is handy for creators in finance, ed-tech, or consultancy, allowing them to interact more directly with their audience while maintaining the familiar experience of superchats.

Features

  • Personal Wallet: Create your wallet to receive Solana from your audience.
  • Priority Interactions: Prioritize interactions with top supporters.
  • Seamless Integration: Integrate StreamSync effortlessly into your existing streaming setup.

Installation

Prerequisites

Ensure you have the following installed:

  • Node.js
  • npm
  • Git

Steps to Install

  1. Clone the Repository:

    git clone https://github.com/rohitsx/streamSync.git
    cd streamSync
  2. Install Client Dependencies:

    cd client
    npm install
  3. Configure Client Environment: Update the .env file with your environment variables.

  4. Install Server Dependencies:

    cd ../server
    npm install
  5. Configure Server Environment: Update the .env file with your environment variables.

Development

To start developing both the client and server, use the following commands:

Start the Client:

cd client
npm run dev

Start the Server:

cd ../server
npm run dev

This will start both the client and server in development mode with live reloading.

Testing as a Browser Extension

To test the project as a Chrome extension:

  1. Build the Client:

    cd client
    npm run build
  2. Install the Extension:

    • Open Chrome and navigate to chrome://extensions/.
    • Enable "Developer mode" in the top right corner.
    • Click "Load unpacked" and select the dist folder generated by the build command.
  3. Keep the Server Running: Ensure the server is running for full functionality.

License

This project is licensed under the MIT License. See the LICENSE file for details.