Star ✨ on GitHub

Introduction

Welcome to the Moonlink.js family! Let's talk about what makes this library special.

Hey there, Developer! πŸ‘‹

First of all: Thank you.

If you are reading this, it means Moonlink.js sparked your curiosity, and that means the world to us. We know you have choices when it comes to Lavalink clients, so seeing you here? That's awesome.

If you enjoy the ride, please consider starring the project on GitHub. It’s a small click for you, but it keeps our motivation fueled and the updates flowing! 🌟


So... Why Moonlink.js? πŸ€”

You might be thinking: "Another Lavalink client? Really?"

We get it. But Moonlink wasn't born just to be "another one". It was born out of necessityβ€”and maybe a little bit of frustration. We wanted a library that didn't just "work", but felt right.

We wanted:

  • Zero "Magic" Crashes: Handling WebSocket drops gracefully shouldn't be a luxury.
  • Structures that Make Sense: A Manager manages. A Player plays. A Queue isn't just a sad array; it's a powerful tool with shuffling, looping, and history.
  • Types that Actually Help: We love TypeScript. We hate guessing properties. Moonlink is strictly typed so your IDE can actually help you.

Basically, we built the library we wanted to use. And now, we hope it's the library you want to use too.


Okay, real talk for a second.

Moonlink.js supports the standard Java Lavalink (v4), and it works great. But if you want to see this library truly shine, you need to pair it with NodeLink.

Why you should care

NodeLink is a Lavalink-compatible audio server... written in Node.js.

Yes, you read that right. No more Java runtime updates. No more .jar files feeling out of place in your JS environment. It's Node.js from top to bottom.

  • It's Fast: Like, really fast. It's optimized for the V8 engine we all know and love.
  • It's Native: Your bot is JS/TS. Your audio server is JS/TS. The synergy is real.
  • It just works: Moonlink.js treats NodeLink like royalty.

If you haven't tried it yet, do it. It might just change how you think about Discord audio. πŸ˜‰


Are you ready? πŸ› οΈ

Here is what you need to get started:

TechRequirementNote
Node.jsv18.x or higherWe use modern tech. Don't be stuck in the past!
NodeLinkLatestHighly Recommended. Seriously.
Lavalinkv4.xFully Supported.
Lavalink v3v3.x❌ Dropped. It's time to let go.

Enough talk. Let's get your bot singing! 🎡