https://github.com/cloudwithax/flare
A fully-featured Lavalink client library for Lua that works seamlessly with Discordia.
https://github.com/cloudwithax/flare
discord discordia lavalink lavalink-api lavalink-wrapper lua lua-lavalink luvit music-bot youtube
Last synced: 3 months ago
JSON representation
A fully-featured Lavalink client library for Lua that works seamlessly with Discordia.
- Host: GitHub
- URL: https://github.com/cloudwithax/flare
- Owner: cloudwithax
- License: mit
- Created: 2023-03-15T18:39:38.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-04-15T22:10:09.000Z (about 2 years ago)
- Last Synced: 2025-01-22T06:37:49.897Z (4 months ago)
- Topics: discord, discordia, lavalink, lavalink-api, lavalink-wrapper, lua, lua-lavalink, luvit, music-bot, youtube
- Language: Lua
- Homepage:
- Size: 15.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Flare
A fully-featured Lavalink client library for Lua that works seamlessly with Discordia.
## NOTE
This client library is in heavy development and **will** change drastically. Please do not use this production until all bugs have been worked out.
# Installation
To install this library, you must use the `lit` package manager as follows:
```
lit install cloudwithax/flare
```# Example
Heres a quick example:
```lua
local discordia = require('discordia')
local flare = require('flare')
local Pool = flare.Pool
local Player = flare.Player
local Node = flare.Node
local client = discordia.Client()local node = {
host = '127.0.0.1',
port = 2333,
password = 'youshallnotpass',
identifier = 'mynode'
}client:on('ready', function()
Pool():create_node(client, node)
print('Logged in as ' .. client.user.username)
end)client:on('messageCreate', function(message)
-- handle your commands here
if command == 'join' then
local player = Node:create_player(vc)elseif command == 'play' then
local player = Node:get_player(guildid)
local tracks = player:get_tracks(query)
local track = tracks[1]
player:play(track)elseif command == 'leave' then
local player = Node:get_player(guildid)
player:disconnect()
end
end)client:run('Bot ')
```