{"id":14983542,"url":"https://github.com/devuuuxd/vibesync","last_synced_at":"2025-10-29T22:31:17.764Z","repository":{"id":255057400,"uuid":"848391057","full_name":"devuuuxd/VibeSync","owner":"devuuuxd","description":"Vc Status is a simple library for managing custom statuses in Discord Voice Channels. Easily set and update your channel statuses to keep your server engaging and organized.","archived":false,"fork":false,"pushed_at":"2025-01-19T13:54:37.000Z","size":23,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-02T05:31:27.436Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devuuuxd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2024-08-27T17:12:57.000Z","updated_at":"2025-01-19T13:54:39.000Z","dependencies_parsed_at":"2024-09-24T12:03:53.938Z","dependency_job_id":"f65859ab-f61e-4455-a43d-00947179de8b","html_url":"https://github.com/devuuuxd/VibeSync","commit_stats":{"total_commits":11,"total_committers":1,"mean_commits":11.0,"dds":0.0,"last_synced_commit":"e796da3e40508c16e04bbda9481b9112027a982a"},"previous_names":["devuuuxd/vc-status"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devuuuxd%2FVibeSync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devuuuxd%2FVibeSync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devuuuxd%2FVibeSync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devuuuxd%2FVibeSync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devuuuxd","download_url":"https://codeload.github.com/devuuuxd/VibeSync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238909299,"owners_count":19550837,"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","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":[],"created_at":"2024-09-24T14:07:21.273Z","updated_at":"2025-10-29T22:31:17.759Z","avatar_url":"https://github.com/devuuuxd.png","language":"JavaScript","readme":"# VibeSync\n\n`VibeSync` is a Node.js library to update the status of a Discord voice channel. It simplifies setting and resetting custom status messages for voice channels using the Discord API.\n\n## Installation\n\nInstall `VibeSync` with:\n\n```bash\nnpm install vibesync\n```\n# Usage\n## Import and Initialization\nImport the VibeSync class and initialize it with your Discord bot client:\n```js\nconst { Client, GatewayIntentBits } = require('discord.js');\nconst { VibeSync } = require('vibesync');\n\nconst client = new Client({\n    intents: [\n        GatewayIntentBits.Guilds,\n        GatewayIntentBits.GuildVoiceStates,\n        GatewayIntentBits.GuildMessages,\n        GatewayIntentBits.MessageContent\n    ]\n});\n\nconst vibeSync = new VibeSync(client);\n```\n## Set Voice Channel Status\nUse setVoiceStatus to set a custom status for a voice channel:\n```js\nconst channelId = 'CHANNEL_ID_HERE';\nconst status = 'CUSTOM_STATUS_HERE';\n\nvibeSync.setVoiceStatus(channelId, status)\n    .then(() =\u003e console.log('Voice channel status updated successfully'))\n    .catch(err =\u003e console.error('Failed to update voice channel status:', err));\n```\n\n## Reset Voice Channel Status\nUse resetVoiceStatus to reset the status of a voice channel:\n```js\nconst channelId = 'CHANNEL_ID_HERE';\n\nvibeSync.resetVoiceStatus(channelId)\n    .then(() =\u003e console.log('Voice channel status reset successfully'))\n    .catch(err =\u003e console.error('Failed to reset voice channel status:', err));\n```\n\n# Example\nA complete example using VibeSync:\n```js\nconst { Client, GatewayIntentBits } = require('discord.js');\nconst { VibeSync } = require('vibesync');\n\nconst client = new Client({\n    intents: [\n        GatewayIntentBits.Guilds,\n        GatewayIntentBits.GuildVoiceStates,\n        GatewayIntentBits.GuildMessages,\n        GatewayIntentBits.MessageContent\n    ]\n});\n\nconst vibeSync = new VibeSync(client);\n\nclient.once('ready', () =\u003e {\n    console.log(`Logged in as ${client.user.tag}`);\n});\n\nclient.on('messageCreate', async message =\u003e {\n    if (message.author.bot) return;\n\n    const CHANNEL_ID = 'CHANNEL_ID_HERE';\n    const channel = client.channels.cache.get(CHANNEL_ID);\n\n    if (!channel) {\n        await message.reply('❌ Voice channel not found.');\n        return;\n    }\n\n    if (message.content.startsWith('!vcstatus')) {\n        const args = message.content.split(' ').slice(1);\n        const status = args.join(' ');\n\n        if (!status) {\n            await message.reply('⚠️ Please provide a status message.');\n            return;\n        }\n\n        try {\n            await vibeSync.setVoiceStatus(CHANNEL_ID, status);\n            await message.reply('✅ Voice channel status updated.');\n        } catch (err) {\n            console.error('Failed to update voice channel status:', err);\n            await message.reply('❌ Failed to update status. Check console for errors.');\n        }\n    }\n    if (message.content.startsWith('!progressbar')) {\n        try {\n            await vibeSync.setVoiceStatus(CHANNEL_ID, '▱▱▱▱▱▱');\n        } catch (err) {\n            console.error('Failed to update voice channel status:', err);\n        }\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▱▱▱▱▱');\n        }, 1000);\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▰▱▱▱▱');\n        }, 2000);\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▰▰▱▱▱');\n        }, 3000);\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▰▰▰▱▱');\n        }, 4000);\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▰▰▰▰▱');\n        }, 5000);\n        setTimeout(() =\u003e {\n            vibeSync.setVoiceStatus(CHANNEL_ID, '▰▰▰▰▰▰');\n        }, 6000);\n        setTimeout(() =\u003e {\n            vibeSync.resetVoiceStatus(CHANNEL_ID);\n        }, 7000);\n    }\n    if (message.content === '!vcreset') {\n        try {\n            await vibeSync.resetVoiceStatus(CHANNEL_ID);\n            await message.reply('✅ Voice status reset.');\n        } catch (err) {\n            console.error('❌ Voice status couldn\\'t be reset:', err);\n            await message.reply('❌ Voice status couldn\\'t be reset.');\n        }\n    }\n});\n\nclient.login('TOKEN_HERE');\n```\n\n# Error Handling\nThe setVoiceStatus method distinguishes between:\n- API errors: Errors returned by the Discord API.\n- No response: Cases where no response is received from the API.\n- Request setup errors: Issues with creating the request.\nErrors are logged to the console.\n  \n# Contributing\n### Feel free to contribute to `VibeSync` by submitting issues or pull requests. Your contributions are welcome!\n\n# License\n### `VibeSync` is licensed under the MIT License. See the LICENSE file for more information.\n\nFeel free to adjust the examples and instructions according to your specific requirements. Let me know if you need any changes or additional details!\nAdjust the examples and instructions as needed for your requirements!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevuuuxd%2Fvibesync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevuuuxd%2Fvibesync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevuuuxd%2Fvibesync/lists"}