-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
Description
Create a user-friendly multi-step form for uploading Music NFTs, followed by the implementation of the backend logic.
- The form must use
@bitsongjs/metadataand include fields to generate metadata similar to the provided example. - The form should guide the user through various steps such as:
- Audio upload
- Artwork upload, adding title and artists
- Adding additional metadata
- Choosing the type of sale (curve or fixed price)
- Setting sale parameters
- Adding royalty recipients
- The following endpoints are proposed for handling the form data:
POST /me/music-nftPUT /me/music-nft/<draft-id>/upload/audioPUT /me/music-nft/<draft-id>/upload/artworkPUT /me/music-nft/<draft-id>/metadata- ...
Example
const metadata = trackMetadata({
title: 'title',
titleLocale: 'en',
description: toMarkdown(`this is a description`),
artists: [
{
name: 'The best Artist',
role: ArtistRole.MAIN_ARTIST,
},
{
name: 'Artist 2',
role: ArtistRole.FEATURING,
},
],
contentType: MediaAudioMimeType.WAV_VND,
artwork: 'https://bitsong.io/artwork.png',
audio: 'https://bitsong.io/audio.mp3',
duration: 100,
license: LicenseType.NO_RIGHTS_RESERVED,
genre: TrackGenre.DANCE,
country: Country.ITALY,
explicit: TrackExpicit.CLEAN,
isrc: 'IT-ABC-12345',
authors_publishers: [
{
name: 'Author 1',
role: AuthorPublisherRole.COMPOSER,
},
{
name: 'Author 2',
role: AuthorPublisherRole.LYRICIST,
},
],
cLine: '2020 The Best Label',
pLine: '2020 The Best Label',
liveRecording: false,
lyrics: toMarkdown(`this is a lyrics`),
lyricsLocale: 'en',
previousRelease: false,
previewStartTime: 15,
version: 'Radio Edit',
video: 'https://bitsong.io/video.mp4',
iswc: 'IT-ABC-12345',
label: 'The Best Label',
})This feature will streamline the process of uploading and setting up Music NFTs on the platform, making it accessible and efficient for users.