🌐 Live Preview: hikari.shadowexe.in | 💬 Support Server: Join Discord
Hikari is a premium, feature-rich Discord music bot designed around Discord Components V2 (Cv2). Built with visual excellence, auto-failover music routing, and localized custom playlists, it delivers studio-quality audio with a borderless, premium aesthetic.
Developed by Shadow (Discord: shadow.css)
Inspired by Kreo
- Discord Components V2 Layouts: Completely borderless interface cards with curated HSL color accents, avoiding default hex borders for a modern, sleek appearance.
- Visual Web Dashboard: Control playback, browse custom playlists, view live listener counts, and manage active server streams in real time from a beautiful web interface.
- Dynamic Lavalink Load Balancing: Integrates multiple high-performance Lavalink nodes (including NyxBot and TriniumHost) with automatic failover, latency scoring, and dynamic migration during node degradation.
- Dynamic Search Engine Auto-Detection: Dynamically queries active Lavalink nodes to detect supported source managers (
YouTube Music,Spotify,Apple Music,Deezer,JioSaavn,SoundCloud) and filters user preferences accordingly. - Local Playlist Management: Create, add, remove, and play localized custom playlists (
pl-create,pl-add,pl-play) stored securely in MongoDB. - Real-Time Audio Control: Modify playback speed (0.25x - 3.0x), seek to timestamps, toggle autoplay, and apply audio filters (BassBoost, 8D audio, NightCore, Vaporwave) instantly.
- Dynamic No-Prefix Access: Database-driven global bypass allowing authorized users to invoke prefix commands without using the default prefix (
>).
Here is a curated summary of Hikari's commands:
| Command | Aliases | Description |
|---|---|---|
play |
p, hplay |
Plays a song or playlist from a search query or direct link. |
autoplay |
ap, auto |
Toggles autoplay mode for recommended songs. |
pause |
None | Pauses the currently playing track. |
resume |
r |
Resumes paused audio playback. |
skip |
s |
Skips the current track instantly. |
stop |
None | Clears the queue, disconnects the bot, and stops playback. |
seek |
None | Jumps to a specific timestamp in the track (e.g., 1:30, 45s). |
speed |
tempo |
Adjusts playback speed (0.25x - 3.0x) using timescale pitch preservation. |
volume |
v, vol |
Modifies volume. Includes interactive adjustment buttons. |
filter |
eq |
Apply advanced audio presets (BassBoost, 8D, NightCore, Reverb). |
| Command | Usage | Description |
|---|---|---|
pl-create |
pl-create <name> |
Create a new custom playlist. |
pl-add |
pl-add <name> | <query> |
Add a track/URL to a playlist. |
pl-remove |
pl-remove <name> <number> |
Remove a track from your playlist. |
pl-list |
pl-list |
List all your custom playlists and sizes. |
pl-play |
pl-play <name> |
Queue and play all songs inside a saved playlist. |
| Command | Description |
|---|---|
serverlist |
Lists all servers the bot is connected to in a paginated list. |
leaveserver |
Forces the bot to leave a specific guild by ID. |
mutual |
Returns mutual servers sharing connection with a user. |
nopaccess |
Grants, revokes, or lists global no-prefix bypass authorization. |
reload |
Dynamically hot-reloads command scripts in-memory without rebooting. |
restart |
Confirms and safely restarts the bot node process. |
Hikari is structured for a secure, high-performance hybrid deployment:
- Backend (Discord Bot & Express API Server): Deployed to a VPS or Pterodactyl Panel. The dashboard API server is integrated natively inside the Discord bot process, running together on a single port for maximum speed, security, and simplicity.
- Frontend (Vite React Client): Deployed to Vercel as a globally fast static site, proxying
/apitraffic directly to the Pterodactyl IP/port via Vercel Edge rewrites.
Follow these steps to host the backend of your bot on any standard Pterodactyl Panel:
- Go to your Pterodactyl Server's dashboard and navigate to the Network or Allocations tab.
- Allocate a new port (e.g.,
5000or any available port). This will be the single port your backend uses for both the bot API and dashboard endpoints.
- Download or clone this repository to your local machine.
- Zip all files excluding the
node_modulesfolders (both in the root directory and insideHikari-dash/). - Upload the ZIP file directly to the Files manager on Pterodactyl, and extract it.
Create a file named .env in the root folder of the project via the Pterodactyl file editor:
# 🌌 DISCORD BOT CONFIGURATION
DISCORD_TOKEN=your_discord_bot_token
CLIENT_ID=your_bot_client_id
PREFIX=>
OWNER_IDS=your_discord_user_id
SUPPORT_URL=https://discord.gg/WSyEdJXFtY
# ⚡ BOT STATUS PRESENCE
BOT_STATUS="lofi songs for kavya <:woo:1414225948089520198>"
BOT_STATUS_TYPE=CUSTOM
# 🔊 LAVALINK CONFIGURATION
LAVALINK_HOST=sg1-nodelink.nyxbot.app
LAVALINK_PORT=3000
LAVALINK_PASSWORD=nyxbot.app/support
LAVALINK_SECURE=false
# 💾 DATABASE
MONGO_URI=mongodb+srv://your_username:your_password@cluster.mongodb.net/hikari
# 🌐 DASHBOARD EXPRESS API
PORT=5000 # Use your allocated Pterodactyl port here
DISCORD_CLIENT_ID=your_bot_client_id
DISCORD_CLIENT_SECRET=your_bot_client_secret
DISCORD_REDIRECT_URI=https://your-vercel-domain.vercel.app/api/auth/callback
JWT_SECRET=use_a_random_32_character_hex_string- Go to the Startup tab in the Pterodactyl panel.
- In the Start Command or Startup configuration field, set it to run:
(Or keep it as
npm start
npm run start-allsince both commands now start the unified process directly). - Click the Console tab and click Start. The panel will automatically install dependencies and launch the unified bot and dashboard backend concurrently.
Hosting the React frontend on Vercel is free, secure, and yields ultra-fast load times:
- Open the Hikari-dash/vercel.json file.
- Replace the destination URL with your Pterodactyl server's public IP/domain and the allocated port:
{ "rewrites": [ { "source": "/api/:path*", "destination": "http://your_pterodactyl_ip:your_allocated_port/api/:path*" }, { "source": "/(.*)", "destination": "/$1" } ]
}
*(Example: `http://149.202.85.42:5000/api/:path*`)*
#### B. Deploy to Vercel
1. Sign in to your [Vercel Dashboard](https://vercel.com) and click **Add New** -> **Project**.
2. Import your GitHub repository.
3. In the project configuration page:
- **Root Directory**: Select the `Hikari-dash` folder.
- **Framework Preset**: Select **Vite** (automatically detected).
- **Build Command**: `npm run build`
- **Output Directory**: `dist`
4. Click **Deploy**. Vercel will build the frontend assets and provide you with a deployment domain (e.g., `https://hikari-dash.vercel.app`).
---
### 🛡️ 3. Discord Developer Portal OAuth2 Setup
To allow users to log in with their Discord accounts to control the bot:
1. Go to the [Discord Developer Portal](https://discord.com/developers/applications).
2. Select your application, navigate to the **OAuth2** tab, and click **Redirects**.
3. Add a redirect matching your Vercel domain:
```text
https://your-vercel-domain.vercel.app/api/auth/callback
- Save the changes. You're ready to go!
- Developed By: Shadow (
shadow.css) - Inspiration & Design Core: Inspired by the UI and framework concepts of Kreo.
- Audio Core: Built using Shoukaku and Lavalink v4.
- License: MIT License (included in repository)
