Initial commit: Music Hub collaboration platform
Full-stack music production collaboration tool with: - SvelteKit frontend with Design System (CSS vars, 8 shared components) - Hono API with auth, projects, tracks, versions, comments - PostgreSQL + Drizzle ORM (8 tables, roles, permissions) - S3-compatible storage with presigned upload URLs - wavesurfer.js audio player with waveform visualization - A/B version comparison with synchronized playback - Timestamped comments with threading and resolve workflow - Magic Link authentication with Resend email integration - Background audio processing (ffmpeg transcode + waveform peaks) - Role-based access control (Owner, Engineers, Artist, Label, Management, Viewer) - Toast notifications, skeleton loading, responsive layout - Docker deployment setup (API + Web + Postgres) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
24
packages/shared/src/constants/audio.ts
Normal file
24
packages/shared/src/constants/audio.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
export const SUPPORTED_AUDIO_FORMATS = [
|
||||
'audio/wav',
|
||||
'audio/x-wav',
|
||||
'audio/mp3',
|
||||
'audio/mpeg',
|
||||
'audio/flac',
|
||||
'audio/x-flac',
|
||||
'audio/aiff',
|
||||
'audio/x-aiff',
|
||||
] as const;
|
||||
|
||||
export const SUPPORTED_EXTENSIONS = ['.wav', '.mp3', '.flac', '.aiff', '.aif'] as const;
|
||||
|
||||
export const MAX_FILE_SIZE = 500 * 1024 * 1024; // 500 MB
|
||||
|
||||
export const VERSION_STATUSES = [
|
||||
'uploaded',
|
||||
'processing',
|
||||
'ready',
|
||||
'approved',
|
||||
'rejected',
|
||||
] as const;
|
||||
|
||||
export type VersionStatus = (typeof VERSION_STATUSES)[number];
|
||||
Reference in New Issue
Block a user