Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/coslynx/discord-sound-sharing-bot

Project: Melodic Discord Bot for Music Play. Created at https://spectra.codes, which is owned by @Drix10
https://github.com/coslynx/discord-sound-sharing-bot

code-generation code-quality community-building developer-tools devops discord-bot discordjs express ffmpeg javascript machine-learning mongodb music-playback nodejs playlist-support queue-management software-development user-engagement volume-control ytdl-core

Last synced: 4 days ago
JSON representation

Project: Melodic Discord Bot for Music Play. Created at https://spectra.codes, which is owned by @Drix10

Awesome Lists containing this project

README

        




discord-sound-sharing-bot


A powerful Discord bot for seamless music playback and community engagement.


Developed with the software and tools below.









git-last-commit
GitHub commit activity
GitHub top language

## πŸ“‘ Table of Contents
- πŸ“ Overview
- πŸ“¦ Features
- πŸ“‚ Structure
- πŸ’» Installation
- πŸ—οΈ Usage
- 🌐 Hosting
- πŸ“„ License
- πŸ‘ Authors

## πŸ“ Overview
The repository contains a project called "discord-sound-sharing-bot" that provides a comprehensive solution for music playback and social engagement on Discord. Developed using Node.js, React, and various APIs, this bot enhances user interactions through collaborative music experiences.

## πŸ“¦ Features
| | Feature | Description |
|----|--------------------------|------------------------------------------------------------------------------------------------------------------------|
| 🎢 | Music Playback | Ability to play music from trusted sources like YouTube and Spotify in voice channels for shared listening experiences.|
| πŸ“‹ | Queue Management | Users can create, view, and manage a music queue to control playback. |
| πŸ”Š | Volume Control | Users can easily adjust playback volume, mute or unmute the bot during conversations. |
| βš™οΈ | Command System | Intuitive commands for playback functions make the bot accessible for all users. |
| 🎡 | Playlist Support | Users can manage custom playlists and import them from various platforms for a tailored music experience. |
| πŸ› οΈ | Bot Moderation | Admin commands for managing bot interactions, enhancing server organization. |
| πŸ”— | Cross-Server Functionality | Operates across multiple Discord servers, maintaining consistent playback and control. |

## πŸ“‚ Structure
```plaintext
discord-sound-sharing-bot/
β”‚
β”œβ”€β”€ commands/ # Contains bot command logic
β”‚ β”œβ”€β”€ play.js # Play a requested song
β”‚ β”œβ”€β”€ pause.js # Pause currently playing music
β”‚ β”œβ”€β”€ resume.js # Resume paused music
β”‚ β”œβ”€β”€ stop.js # Stop playback and disconnect
β”‚ β”œβ”€β”€ skip.js # Skip to the next song in the queue
β”‚ └── queue.js # Manage the song queue
β”‚
β”œβ”€β”€ events/ # Event handlers for Discord interactions
β”‚ β”œβ”€β”€ message.js # Handle incoming messages
β”‚ β”œβ”€β”€ guildMemberAdd.js # Actions on new member joining
β”‚ └── ready.js # Bot is ready and operational
β”‚
β”œβ”€β”€ services/ # Core logic for music playback and queues
β”‚ β”œβ”€β”€ musicService.js # Handles music playback
β”‚ └── queueService.js # Manages the music queue
β”‚
β”œβ”€β”€ models/ # Database models for MongoDB
β”‚ β”œβ”€β”€ userModel.js # User metadata
β”‚ β”œβ”€β”€ playlistModel.js # Playlist structures
β”‚ └── songModel.js # Song definitions
β”‚
β”œβ”€β”€ utils/ # Utility functions
β”‚ β”œβ”€β”€ commandHandler.js # Command parsing and execution
β”‚ └── logger.js # Logging utilities
β”‚
β”œβ”€β”€ config/ # Configuration files
β”‚ β”œβ”€β”€ env.config.js # Environment variables
β”‚ └── database.config.js # DB connection settings
β”‚
β”œβ”€β”€ routes/ # API route definitions
β”‚ β”œβ”€β”€ api.js # Main API endpoint definitions
β”‚ └── musicRoutes.js # Music related routes
β”‚
β”œβ”€β”€ middleware/ # Middleware functions for authentication and logging
β”‚ β”œβ”€β”€ authentication.js # User authentication
β”‚ └── logging.js # Request logging
β”‚
β”œβ”€β”€ .env # Environment configuration
β”œβ”€β”€ package.json # Project dependencies and scripts
└── README.md # Project documentation
```

## πŸ’» Installation
### πŸ”§ Prerequisites
- Node.js
- npm
- Docker

### πŸš€ Setup Instructions
1. Clone the repository:
- `git clone https://github.com/spectra-ai-codegen/discord-sound-sharing-bot.git`
2. Navigate to the project directory:
- `cd discord-sound-sharing-bot`
3. Install dependencies:
- `npm install`

## πŸ—οΈ Usage
### πŸƒβ€β™‚οΈ Running the Project
1. Start the development server:
- `npm start`
2. Open your Discord server and invite the bot using appropriate permissions.

### βš™οΈ Configuration
Adjust configuration settings in '.env' for database connections and API keys.

## 🌐 Hosting
### πŸš€ Deployment Instructions
You can deploy the bot using various platforms. Here’s how to do it on Heroku:

1. Install the Heroku CLI:
- `npm install -g heroku`
2. Log in to Heroku:
- `heroku login`
3. Create a new Heroku app:
- `heroku create`
4. Deploy the code:
- `git push heroku main`

### πŸ”‘ Environment Variables
- `DB_HOST`: Database host
- `DB_USER`: Database user
- `DB_PASS`: Database password

## πŸ“œ License
This project is licensed under the [GNU AGPLv3](https://choosealicense.com/licenses/agpl-3.0/).

## πŸ‘₯ Authors
- Drix10 - [GitHub Profile](https://github.com/Drix10)
- Spectra.codes - [Spectra.codes](https://spectra.codes)


🌐 Spectra.Codes


Why only generate Code? When you can generate the whole Repository!