Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ecliptia/challenge-to-recruit-devs

This challenge is for anyone who wants to be a moonlink.js developer
https://github.com/ecliptia/challenge-to-recruit-devs

Last synced: about 1 month ago
JSON representation

This challenge is for anyone who wants to be a moonlink.js developer

Awesome Lists containing this project

README

        

# Moonlink.js Developer Recruitment Challenge

## Introduction
Welcome to the developer recruitment challenge to become a Moonlink.js developer. This challenge aims to assess your coding skills, code clarity, and basic understanding of interactions with Moonlink.js.

## Objective
The challenge is to create a simple client to interact with Lavalink (without using packages that provide this functionality out of the box) and perform basic operations, such as playing and pausing music.

## Requirements

1. **Client Configuration:**
- create a way to configure the wrapper
- Provide configuration options, such as host, port, password, etc.
- the wrapper can be limited to one server, but if you want to grow more
2. **Play Music Command:**
- Implement a command to play music. The command should accept a YouTube URL as an argument.
- Ensure that the music is played in the voice channel of the user who executed the command.

3. **Pause Command:**
- Implement a command to pause the currently playing music.

4. **Code Clarity:**
- Organize your project structure thoughtfully.

## Resources
- [Lavalink GitHub](https://github.com/lavalink-devs/Lavalink)
- [Lavalink API Documentation](https://github.com/lavalink-devs/Lavalink/blob/master/IMPLEMENTATION.md)

##

## How to Participate
1. Fork this repository.
2. Create a branch for your changes.
3. Commit and push your changes.
4. Open a pull request in this repository.

## Evaluation Criteria
- Correct and complete functionality.
- Code quality.
- Comments and documentation.
- Adherence to requirements.

## Notes
- Use JavaScript (CommonJS, ECMAScript), or TypeScript.
- Avoid using packages that provide ready-made functionalities for interacting with Lavalink.
- Don't ask for ready-made code from chatGPT, Bard, other artificial intelligences; at most, they can help you understand how it works.
- Don't use ready-made code from the internet.
- You can use npmjs libraries of your choice to assist with integration, but packages that are lavalink clients will not be accepted.
- using native libraries improves your evaluation.

Good luck! We look forward to seeing what you create.