In development

MSL Music Library.

Primary stackReact 18

Digital library for organizing, cataloging, and sharing PDF music scores. Built for musicians, educators, and institutions to manage sheet music collections.

MSL Music Library
Role
Solo full-stack engineer
Timeline
2024
Team
Solo
Context
Digital library for musicians & schools
/ The brief

Musicians and music schools manage score collections in Dropbox, spreadsheets, and paper folders. MSL replaces that with a searchable, taggable, collaborative score library with a built-in PDF viewer — so students can open a score, zoom, and read without downloading anything.

/ Overview

MSL is a full-stack music score library with a React 18 frontend and Django REST API backend with 60+ endpoints. Features include multiple library management (public/private), rich metadata tagging (composer, period, difficulty, work type), collaboration with 3 permission levels, global search with filtering, built-in PDF viewer with zoom and dark/light theme, activity tracking, in-app notifications, and batch upload up to 20 scores.

/ Approach
/01

Django REST + React 18

60+ endpoints on the Django side; React 18 on the reading surface. Django admin handles content moderation for free, which saved building a custom moderator UI.

/02

Metadata-first catalog

Every score carries composer, period, difficulty, work type, and custom tags. Search runs over structured fields, not just filenames — so "Bach · Baroque · intermediate" returns exactly that.

/03

Three-level collaboration

Owner / editor / viewer permissions applied per library. Lets a school split public/private collections — a master catalog open to students, a private working set for faculty.

/ Scope
  • Built-in PDF viewer with zoom and dark/light themes
  • Batch upload up to 20 scores at once
  • Public + private libraries per account
  • Activity feed + in-app notifications
Full stack
React 18DjangoPostgreSQLMaterial-UITailwind CSSDocker
Screens
/ Desktop
Dashboard
Libraries
/ Mobile
/ Footer

Clear design, solidengineering.

© 2026 Alejandro Chavarria · All rights reserved.

Built with care in Costa Rica · CR