UNPKG

@superbuilders/mureka

Version:

TypeScript client for the Mureka AI API, providing type-safe access to music generation, lyrics creation, speech synthesis, and fine-tuning capabilities

97 lines (67 loc) 2.17 kB
# Mureka API Client A TypeScript client for the Mureka AI API, providing type-safe access to music generation, lyrics creation, speech synthesis, and fine-tuning capabilities. ## Features - 🎵 Music Generation - 📝 Lyrics Generation & Extension - 🎤 Speech Synthesis - 🎧 Podcast Generation - 🎼 Instrumental Generation - 🎹 Song Stemming - 🎯 Fine-tuning Support - 💳 Billing Information ## Installation ```bash npm install @superbuilders/mureka ``` ## Usage ```typescript import * as mureka from "@superbuilders/mureka" const client = mureka.createClient({ apiKey: "your-api-key" }) // Generate lyrics const lyrics = await client.generateLyrics({ prompt: "A song about artificial intelligence" }) // Generate a song const song = await client.generateSong({ lyrics: lyrics.lyrics, model: "auto" }) // Check song generation status const status = await client.querySongTask({ task_id: song.id }) ``` ## API Reference ### Music Generation - `generateSong`: Create a new song with lyrics - `querySongTask`: Check the status of a song generation task - `stemSong`: Split a song into individual tracks - `generateInstrumental`: Create instrumental music ### Lyrics - `generateLyrics`: Generate lyrics from a prompt - `extendLyrics`: Extend existing lyrics ### Speech & Podcast - `generateSpeech`: Convert text to speech - `generatePodcast`: Create a podcast-style conversation ### Fine-tuning - `createUpload`: Initialize a fine-tuning upload - `addUploadPart`: Add parts to an upload - `completeUpload`: Finalize an upload - `createFineTuningTask`: Start a fine-tuning task - `queryFineTuningTask`: Check fine-tuning task status ### File Management - `uploadFile`: Upload files for various purposes (reference, vocal, melody, etc.) ### Account - `getBillingInfo`: Retrieve account billing information ## Error Handling The client includes comprehensive error handling with specific error types for common API responses: - `ErrInvalidRequest` (400) - `ErrInvalidAuthentication` (401) - `ErrForbidden` (403) - `ErrRateLimitOrQuotaExceeded` (429) - `ErrServerError` (500) - `ErrEngineOverloaded` (503) ## License MIT-0