곡 보관함과 악보 학습 기능을 보완

업로드 형식을 MIDI와 MusicXML과 MXL 및 PDF로 확장하고 파일별 검증을 추가했다.

AlphaTab 악보 자산과 Nginx MIME 설정을 보완해 운영에서 오선과 음표가 표시되도록 수정했다.

공개 도메인 클래식과 난이도별 연습 편곡 7개를 같은 제목별로 묶고 출처와 운영 검증 결과를 문서화했다.

검사: TypeScript 검사와 Vitest 67개 및 Vite 운영 빌드 통과. 운영 브라우저 악보 표시와 네 가지 업로드 검증 형식 확인.
백업: /home/syskiller/piano/backups/bach-to-basics/20261003-1545-sheet-upload
운영 반영: 완료
This commit is contained in:
이창현
2026-10-03 16:15:00 +09:00
parent c918f02685
commit 0522e48013
35 changed files with 83181 additions and 123 deletions
+12
View File
@@ -38,6 +38,18 @@ server {
add_header Cache-Control "no-store, no-cache, must-revalidate" always;
}
# AlphaTab의 Worker와 AudioWorklet은 ES 모듈이다. nginx 기본 MIME 표에
# mjs가 없으면 브라우저가 nosniff 정책에 따라 실행을 차단한다.
location ~* \.mjs$ {
default_type application/javascript;
expires 1y;
add_header Cache-Control "public, immutable" always;
add_header X-Frame-Options "DENY" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "no-referrer" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
}
# API proxy, strips the /api prefix on the way through
location /api/ {
proxy_pass http://backend:8000/;