Need Help? Join our Development Server
Maple is a music library and organization tool. It allows you to upload your music library and watch it be organized into albums, artists, playlists, and more! You are given robust controls to play and organize your music. In the future, it will include optional social and stat-tracking features.
Accounts give you access to social, and other online features! Want to know what your friends are listening to? Share your music to your discord server? Have access to a public API to get your recent listening history? All of that & More is unlocked when you make an account! No email required + free!.
Will my library be sent to anyone?
Help! I have ___ Bug!
Please note, this site is still early in development. Many features/bugs are known and are actively being worked on. Check our discord here for more information.
How do the account features work?
What data is saved on the server?
*your plaintext password will NEVER be avalible to anyone, even those with access to our servers.
If you have any other questions, feel free to DM cattn.
on discord, or email me @ [email protected]
API Link: https://maple.kolf.pro:3000
GET
- /public/get/user/:username
Returns a user based on the given username.
Request Example:
const response = await fetch(`${this.SERVER}/public/get/user/${username}`, {
credentials: 'include',
method: 'GET'
});
const data = await response.json();
Response:
{
id: id,
username: username,
name?: name,
}
GET
- /public/get/user/id/:id
Returns a user based on the given id.
Request Example:
const response = await fetch(`${this.SERVER}/public/get/user/id/${id}`, {
method: 'GET'
});
const data = await response.json();
Response:
{
id: id,
username: username,
name?: name,
nowPlaying?: {
title: title,
artist: artist,
album: album
}
}
GET
- /public/get/pfp/:id
Returns a profile picture based on the given id.
Request Example:
const response = await fetch(`${this.SERVER}/public/get/pfp/${id}`, {
method: 'GET'
});
const data = await response;
Response:
File Object
POST
- /user/friends/add/:id
Add a given user to your friends list by ID.
REQUIRED: Login Token
*
Request Example:
const response = await fetch(`${this.SERVER}/user/friends/add/${id}`, {
credentials: 'include',
method: 'POST'
});
const data = await response.json();
Response: 200
{ message: 'Request sent successfully' }
Response: 500
{ error: 'Error adding friend' }
Typically you can only get a login token by logging in on our site, however if you extract this cookie you can use it from another site to login.
Maple was inspired by various experiences, such as being on a plane without internet. While I had my music with me, I found local tools like Windows Media Player lacking. This project not only aims to solve that issue but also serves as a learning experience for me.