{"id":22307237,"url":"https://github.com/toddythenoobdud/aqualink","last_synced_at":"2025-08-29T16:39:35.983Z","repository":{"id":265956030,"uuid":"896975438","full_name":"ToddyTheNoobDud/AquaLink","owner":"ToddyTheNoobDud","description":"An Stable, performant, Recourse friendly and fast lavalink wrapper","archived":false,"fork":false,"pushed_at":"2025-08-22T18:15:55.000Z","size":988,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-22T20:58:44.367Z","etag":null,"topics":["discord-js","discord-music-bot","high-performance","javscript","lavalink","lavalink-client","lavalink-wrapper","wrapper","youtube"],"latest_commit_sha":null,"homepage":"https://toddythenoobdud.github.io/aqualink.github.io/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ToddyTheNoobDud.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-01T18:58:31.000Z","updated_at":"2025-08-22T18:15:59.000Z","dependencies_parsed_at":"2025-01-02T19:34:09.182Z","dependency_job_id":"5f2c7fe2-fa7c-437d-acdb-a579b7df3a59","html_url":"https://github.com/ToddyTheNoobDud/AquaLink","commit_stats":null,"previous_names":["toddythenoobdud/aqualink"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ToddyTheNoobDud/AquaLink","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ToddyTheNoobDud%2FAquaLink","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ToddyTheNoobDud%2FAquaLink/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ToddyTheNoobDud%2FAquaLink/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ToddyTheNoobDud%2FAquaLink/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ToddyTheNoobDud","download_url":"https://codeload.github.com/ToddyTheNoobDud/AquaLink/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ToddyTheNoobDud%2FAquaLink/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272723231,"owners_count":24982421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discord-js","discord-music-bot","high-performance","javscript","lavalink","lavalink-client","lavalink-wrapper","wrapper","youtube"],"created_at":"2024-12-03T20:09:08.051Z","updated_at":"2025-08-29T16:39:35.971Z","avatar_url":"https://github.com/ToddyTheNoobDud.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://capsule-render.vercel.app/api?type=wave\u0026color=0099FF\u0026height=300\u0026section=header\u0026text=Aqualink\u0026fontSize=90\u0026fontAlignY=35\u0026animation=twinkling\u0026fontColor=ffffff\u0026desc=The%20Ultimate%20Lavalink%20Wrapper\u0026descSize=25\u0026descAlignY=60\" /\u003e\n\u003c/p\u003e\n\n[![NPM Downloads](https://img.shields.io/npm/dw/aqualink.svg?style=for-the-badge\u0026color=3498db)](https://www.npmjs.com/package/aqualink)\n[![NPM Version](https://img.shields.io/npm/v/aqualink?color=0061ff\u0026label=Aqualink\u0026style=for-the-badge\u0026logo=npm)](https://www.npmjs.com/package/aqualink)\n[![GitHub Stars](https://img.shields.io/github/stars/ToddyTheNoobDud/AquaLink?color=00bfff\u0026style=for-the-badge\u0026logo=github)](https://github.com/ToddyTheNoobDud/AquaLink/stargazers)\n[![Discord](https://img.shields.io/discord/1346930640049803266?color=7289da\u0026label=Discord\u0026logo=discord\u0026style=for-the-badge)](https://discord.gg/K4CVv84VBC)\n\n\u003cbr /\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://readme-typing-svg.herokuapp.com?font=Montserrat\u0026duration=3000\u0026pause=1000\u0026color=0099FF\u0026center=true\u0026vCenter=true\u0026width=600\u0026lines=Powerful+Audio+Streaming+for+Discord+Bots;Optimized+for+Lavalink+v4+%26+Node.js;Industry-Leading+Performance;Easy+to+Implement%2C+Hard+to+Master\" /\u003e\n\u003c/p\u003e\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e🌊 REIMAGINING AUDIO STREAMING FOR DISCORD 🌊\u003c/h3\u003e\n  \u003ch4\u003eExperience crystal-clear audio with unmatched stability\u003c/h4\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n## 💎 Why Choose Aqualink?\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" width=\"33%\"\u003e\n        \u003ch3\u003e🚀\u003c/h3\u003e\n        \u003ch4\u003ePerformance First\u003c/h4\u003e\n        \u003cp\u003eOptimized architecture with 50% less latency than other wrappers\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" width=\"33%\"\u003e\n        \u003ch3\u003e🛠️\u003c/h3\u003e\n        \u003ch4\u003eDeveloper Friendly\u003c/h4\u003e\n        \u003cp\u003eIntuitive API with extensive documentation and CJS/ESM support\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" width=\"33%\"\u003e\n        \u003ch3\u003e🔌\u003c/h3\u003e\n        \u003ch4\u003eExtendable\u003c/h4\u003e\n        \u003cp\u003ePlugin ecosystem for custom functionality and seamless integration\u003c/p\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n## 📦 Installation\n**Latest Stable Release: `v2.11.7`** • **Choose your preferred package manager below**\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e📦 NPM (Most Popular)\u003c/strong\u003e\u003c/summary\u003e\n\n```bash\n# 🎯 Stable release (recommended for production)\nnpm install aqualink\n\n# 🚧 Latest development build\nnpm install ToddyTheNoobDud/aqualink\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e🧶 Yarn (Fast \u0026 Reliable)\u003c/strong\u003e\u003c/summary\u003e\n\n```bash\n# 🎯 Stable release (recommended for production)\nyarn add aqualink\n\n# 🚧 Latest development build \nyarn add ToddyTheNoobDud/aqualink\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e⚡ Bun (Lightning Fast)\u003c/strong\u003e\u003c/summary\u003e\n\n```bash\n# 🎯 Stable release (recommended for production)\nbun add aqualink\n\n# 🚧 Latest development build \nbun add ToddyTheNoobDud/aqualink\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e📦 pnpm (Space Efficient)\u003c/strong\u003e\u003c/summary\u003e\n\n```bash\n# 🎯 Stable release (recommended for production)\npnpm add aqualink\n\n# 🚧 Latest development build\npnpm add ToddyTheNoobDud/aqualink\n```\n\u003c/details\u003e\n\n## 🔥 Feature Highlights\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" width=\"25%\"\u003e\n        \u003cimg src=\"https://img.icons8.com/fluent/48/000000/filter.png\"/\u003e\n        \u003ch4\u003eAdvanced Filters\u003c/h4\u003e\n        \u003cp\u003eEQ, Bass Boost, Nightcore \u0026 more\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" width=\"25%\"\u003e\n        \u003cimg src=\"https://img.icons8.com/fluent/48/000000/cloud-backup-restore.png\"/\u003e\n        \u003ch4\u003eFail-Safe System\u003c/h4\u003e\n        \u003cp\u003eAuto-reconnect \u0026 queue preservation\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" width=\"25%\"\u003e\n        \u003cimg src=\"https://img.icons8.com/fluent/48/000000/bar-chart.png\"/\u003e\n        \u003ch4\u003eReal-time Analytics\u003c/h4\u003e\n        \u003cp\u003ePerformance monitoring \u0026 insights\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" width=\"25%\"\u003e\n        \u003cimg src=\"https://img.icons8.com/fluent/48/000000/settings.png\"/\u003e\n        \u003ch4\u003eCustomizable\u003c/h4\u003e\n        \u003cp\u003eAdapt to your specific needs\u003c/p\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n## 📦 Resources\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://discord.gg/BNrPCvgrCf\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Support_Server-3498db?style=for-the-badge\u0026logo=discord\u0026logoColor=white\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n## 💻 Quick Start\n\n```bash\nnpm install aqualink discord.js\n```\n\n```javascript\nconst { Aqua } = require(\"aqualink\");\nconst { Client, GatewayIntentBits, Events } = require(\"discord.js\");\n\nconst client = new Client({\n    intents: [\n        GatewayIntentBits.Guilds,\n        GatewayIntentBits.GuildMembers,\n        GatewayIntentBits.GuildMessages,\n        GatewayIntentBits.MessageContent,\n        GatewayIntentBits.GuildVoiceStates\n    ]\n});\n\nconst nodes = [\n    {\n        host: \"127.0.0.1\",\n        password: \"your_password\",\n        port: 2333,\n        secure: false,\n        name: \"main-node\"\n    }\n];\n\nconst aqua = new Aqua(client, nodes, {\n    defaultSearchPlatform: \"ytsearch\",\n    restVersion: \"v4\",\n    autoResume: true,\n    infiniteReconnects: true,\n    autoplayPlatform: ['spsearch', 'ytsearch', 'scsearch'],\n    nodeResolver: 'LeastLoad'\n});\n\nclient.aqua = aqua;\n\nclient.once(Events.Ready, () =\u003e {\n    client.aqua.init(client.user.id);\n    console.log(`Logged in as ${client.user.tag}`);\n});\n\nclient.on(Events.Raw, (d) =\u003e {\n    if (![Events.VoiceStateUpdate, Events.VoiceServerUpdate].includes(d.t)) return;\n    client.aqua.updateVoiceState(d);\n});\n\nclient.on(Events.MessageCreate, async (message) =\u003e {\n    if (message.author.bot || !message.content.startsWith(\"!play\")) return;\n\n    const query = message.content.slice(6).trim();\n    if (!query) return message.channel.send(\"Please provide a song to play.\");\n\n    // Check if user is in a voice channel\n    if (!message.member.voice.channel) {\n        return message.channel.send(\"You need to be in a voice channel to play music!\");\n    }\n\n    const player = client.aqua.createConnection({\n        guildId: message.guild.id,\n        voiceChannel: message.member.voice.channel.id,\n        textChannel: message.channel.id,\n        deaf: true,\n    });\n\n    try {\n        const resolve = await client.aqua.resolve({ query, requester: message.member });\n        const { loadType, tracks, playlistInfo } = resolve;\n\n        if (loadType === 'playlist') {\n            for (const track of tracks) {\n                player.queue.add(track);\n            }\n            message.channel.send(`Added ${tracks.length} songs from ${playlistInfo.name}.`);\n        } else if (loadType === 'search' || loadType === 'track') {\n            const track = tracks[0];\n            player.queue.add(track);\n            message.channel.send(`Added **${track.title}** to the queue.`);\n        } else {\n            return message.channel.send(\"No results found.\");\n        }\n\n        if (!player.playing \u0026\u0026 !player.paused) {\n            player.play();\n        }\n    } catch (error) {\n        console.error(\"Playback error:\", error);\n        message.channel.send(\"An error occurred while trying to play the song.\");\n    }\n});\n\nclient.aqua.on(\"nodeConnect\", (node) =\u003e {\n    console.log(`Node connected: ${node.name}`);\n});\n\nclient.aqua.on(\"nodeError\", (node, error) =\u003e {\n    console.log(`Node \"${node.name}\" encountered an error: ${error.message}.`);\n});\n\nclient.aqua.on('trackStart', (player, track) =\u003e {\n    const channel = client.channels.cache.get(player.textChannel);\n    if (channel) channel.send(`Now playing: **${track.title}**`);\n});\n\nclient.aqua.on('queueEnd', (player) =\u003e {\n    const channel = client.channels.cache.get(player.textChannel);\n    if (channel) channel.send('The queue has ended.');\n    player.destroy();\n});\n\nclient.login(\"YOUR_DISCORD_BOT_TOKEN\");\n```\n\n### Additional Commands You Can Add:\n\n```javascript\nclient.on(Events.MessageCreate, async (message) =\u003e {\n    if (message.content === \"!skip\") {\n        const player = client.aqua.players.get(message.guild.id);\n        if (player) {\n            player.skip();\n            message.channel.send(\"⏭️ Skipped current track!\");\n        }\n    }\n});\n\nclient.on(Events.MessageCreate, async (message) =\u003e {\n    if (message.content === \"!stop\") {\n        const player = client.aqua.players.get(message.guild.id);\n        if (player) {\n            player.destroy();\n            message.channel.send(\"⏹️ Stopped playback and cleared queue!\");\n        }\n    }\n});\n```\n\n## 🌟 Featured Projects\n\n\u003cdiv align=\"center\"\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\" width=\"33%\"\u003e\n  \u003cimg width=\"120\" height=\"120\" src=\"https://img.icons8.com/fluent/240/000000/water-element.png\"/\u003e\n  \u003cbr/\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Kenium-00bfff?style=for-the-badge\u0026logo=discord\u0026logoColor=white\" /\u003e\u003cbr /\u003e\n  \u003ca href=\"https://discord.com/oauth2/authorize?client_id=1202232935311495209\"\u003eAdd to Discord\u003c/a\u003e\n\u003c/td\u003e\n\u003ctd align=\"center\" width=\"33%\"\u003e\n  \u003cimg width=\"120\" height=\"120\" src=\"https://cdn.discordapp.com/attachments/1347414750463660032/1365654298989690930/soya1.jpg?ex=680e182d\u0026is=680cc6ad\u0026hm=3055de34e2af31a3a430f52b147a00215f8b88c8dcc9363cab5359c50ce8d75f\u0026\"/\u003e\n  \u003cbr/\u003e\n  \u003cimg src=\"https://img.shields.io/badge/SoyaMusic-22c55e?style=for-the-badge\u0026logo=discord\u0026logoColor=white\" /\u003e\u003cbr /\u003e\n  \u003ca href=\"https://discord.com/oauth2/authorize?client_id=997906613082013868\u0026permissions=281357446481\u0026integration_type=0\u0026scope=bot+applications.commands\"\u003eAdd to Discord\u003c/a\u003e\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\n[View All Projects →](https://github.com/ToddyTheNoobDud/AquaLink#used-by)\n\u003c/div\u003e\n\n\n**300+** weekly downloads • **3+** GitHub stars • **3+** Discord bots\n\n\u003c/div\u003e\n\n## 📖 Documentation\n\nFor detailed usage, API references, and examples, check out our official documentation:\n\n  [![Docs](https://img.shields.io/badge/Documentation-0099FF?style=for-the-badge\u0026logo=readthedocs\u0026logoColor=white)](https://roddynnn.github.io/docs/)\n\n📌 **Get Started Quickly**\n- Installation guide\n- API methods\n- Advanced features\n- Troubleshooting\n\n🔗 Visit: **[Aqualink Docs](https://roddynnn.github.io/docs)**\n\n## 👑 Premium Bots Using Aqualink\n\n| Bot | Invite Link | Features |\n|-----|-------------|----------|\n| Kenium | [Add to Discord](https://discord.com/oauth2/authorize?client_id=1202232935311495209) | Audio streaming, Discord integration |\n| Soya Music | [Add to Discord](https://discord.com/oauth2/authorize?client_id=997906613082013868\u0026permissions=281357446481\u0026integration_type=0\u0026scope=bot+applications.commands) | Audio streaming, Discord integration |\n\n## 🛠️ Advanced Features\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n        \u003ch4\u003e🎛️ Audio Filters\u003c/h4\u003e\n        \u003cul\u003e\n          \u003cli\u003eEqualizer (15-band)\u003c/li\u003e\n          \u003cli\u003eBass Boost \u0026 Bass Cut\u003c/li\u003e\n          \u003cli\u003eNightcore \u0026 Vaporwave\u003c/li\u003e\n          \u003cli\u003e8D Audio \u0026 Rotation\u003c/li\u003e\n          \u003cli\u003eKaraoke \u0026 Channel Mixing\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003ch4\u003e🔄 Queue Management\u003c/h4\u003e\n        \u003cul\u003e\n          \u003cli\u003eShuffle \u0026 Loop modes\u003c/li\u003e\n          \u003cli\u003eQueue history \u0026 navigation\u003c/li\u003e\n          \u003cli\u003eAuto playlist continuation\u003c/li\u003e\n          \u003cli\u003eSkip voting systems\u003c/li\u003e\n          \u003cli\u003ePlaylist import/export\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003ch4\u003e📊 Monitoring\u003c/h4\u003e\n        \u003cul\u003e\n          \u003cli\u003eResource utilization\u003c/li\u003e\n          \u003cli\u003ePerformance metrics\u003c/li\u003e\n          \u003cli\u003eAutomatic issue detection\u003c/li\u003e\n          \u003cli\u003eNode health tracking\u003c/li\u003e\n          \u003cli\u003eLoad balancing\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n## 👥 Contributors\n\n\u003cdiv align=\"center\"\u003e\n\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"50%\"\u003e\n        \u003ca href=\"https://github.com/pomicee\"\u003e\n          \u003cimg src=\"https://avatars.githubusercontent.com/u/134554554?v=4?s=100\" width=\"100px;\" alt=\"pomicee\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003easynico\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n        \u003cbr /\u003e\n        \u003ca href=\"#code-pomicee\" title=\"Code\"\u003e💻\u003c/a\u003e\n        \u003ca href=\"#doc-pomicee\" title=\"Documentation\"\u003e📖\u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"50%\"\u003e\n        \u003ca href=\"https://github.com/ToddyTheNoobDud\"\u003e\n          \u003cimg src=\"https://avatars.githubusercontent.com/u/86982643?v=4?s=100\" width=\"100px;\" alt=\"ToddyTheNoobDud\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eToddyTheNoobDud\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n        \u003cbr /\u003e\n        \u003ca href=\"#code-ToddyTheNoobDud\" title=\"Code\"\u003e💻\u003c/a\u003e\n        \u003ca href=\"#doc-ToddyTheNoobDud\" title=\"Documentation\"\u003e📖\u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"80%\"\u003e\n        \u003ca href=\"https://github.com/SoulDevs\"\u003e\n          \u003cimg src=\"https://avatars.githubusercontent.com/u/114820381?v=4\" width=\"100px;\" alt=\"SoulDevs\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eSoulDevs\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n        \u003cbr /\u003e\n        \u003ca href=\"#code-SoulDevs\" title=\"Code\"\u003e💻\u003c/a\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003cbr /\u003e\n\n[Become a contributor →](CONTRIBUTING.md)\n\n\u003c/div\u003e\n\n## 🤝 Contributing\n\n\u003cdiv align=\"center\"\u003e\n\nWe welcome contributions from developers of all skill levels! Whether it's adding features, fixing bugs, or improving documentation.\n\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-0061ff.svg?style=for-the-badge)](CONTRIBUTING.md)\n\n\u003c/div\u003e\n\n## 💬 Community \u0026 Support\n\n\u003cdiv align=\"center\"\u003e\n\nJoin our thriving community of developers and bot creators!\n\n[![Discord Server](https://img.shields.io/badge/Discord_Server-7289da?style=for-the-badge\u0026logo=discord\u0026logoColor=white)](https://discord.gg/K4CVv84VBC)\n[![GitHub Discussions](https://img.shields.io/badge/GitHub_Discussions-0061ff?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/ToddyTheNoobDud/AquaLink/discussions)\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cbr /\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://capsule-render.vercel.app/api?type=wave\u0026color=0099FF\u0026height=100\u0026section=footer\" /\u003e\n\u003c/p\u003e\n\n\u003csub\u003eBuilt with 💙 by the Aqualink Team\u003c/sub\u003e\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoddythenoobdud%2Faqualink","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoddythenoobdud%2Faqualink","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoddythenoobdud%2Faqualink/lists"}