19 Commits
Author SHA1 Message Date
이창현 75ea54699d 요청과 맞지 않는 연습곡 30개를 철회함
CI / Frontend - type-check & test (push) Canceled after 0s
부르크뮐러와 슈만 연습곡 30개의 공개 등록과 MIDI 및 원본·생성 자료를 제거했다. 정확한 파일명만 제외 목록에 넣어 재시작 후 재등록을 막았다. 회원 업로드와 기존 기본 샘플은 유지했다.

운영 백업: /home/syskiller/piano/backups/bach-to-basics/20261009-withdraw-practice-30. 격리 테스트 5개 통과. 운영 재시작 뒤 HTTPS 목록과 DB 및 파일에서 철회곡 0개를 확인했다. 회원 업로드 2건과 기존 기본 샘플 7개 보존.
2026-10-09 23:51:57 +09:00
이창현 8298f5af26 서로 다른 연습곡 30개에 도입부와 마무리를 추가함
CI / Frontend - type-check & test (push) Canceled after 0s
비슷한 임시 연습곡 다섯 개를 교체했다. 부르크뮐러와 슈만 원본 30곡의 출처와 권리 정보를 보존했다. 각 MIDI에 양손 연습용 도입부와 마무리를 넣고 난이도를 음표 밀도로 분류했다.

MIDI 구조 검사 30개와 서버 격리 테스트 5개를 통과했다. 운영 백업: /home/syskiller/piano/backups/bach-to-basics/20261009-practice-30-intro-ending. 백엔드만 운영에 반영했고 HTTPS 공개 목록과 30개 다운로드를 확인했다. 회원 업로드 2건은 보존됐다. 실제 건반 연주감 검사는 남아 있다.
2026-10-09 23:25:37 +09:00
이창현 89f66c3bee 초보자용 1분 양손 MIDI 연습곡 다섯 개를 추가함
CI / Frontend - type-check & test (push) Canceled after 0s
직접 만든 연습곡 다섯 파일을 공개 보관함에 등록했다. 별빛 계단은 입문과 쉬움 두 단계로 제공한다.

MIDI 파서 검사와 백엔드 단위 테스트 5개를 통과했다. 운영 백업은 /home/syskiller/piano/backups/bach-to-basics/20261009-beginner-midi 에 있다. 백엔드만 갱신했고 비회원 목록과 다운로드를 확인했다. 실제 USB MIDI 장치 검사는 남아 있다. 사전 훅은 로컬 pnpm 의존성 불일치로 실행되지 않아 관련 검사를 직접 수행했다.
2026-10-09 23:06:17 +09:00
이창현 0522e48013 곡 보관함과 악보 학습 기능을 보완
업로드 형식을 MIDI와 MusicXML과 MXL 및 PDF로 확장하고 파일별 검증을 추가했다.

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

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

검사: TypeScript 검사와 Vitest 67개 및 Vite 운영 빌드 통과. 운영 브라우저 악보 표시와 네 가지 업로드 검증 형식 확인.
백업: /home/syskiller/piano/backups/bach-to-basics/20261003-1545-sheet-upload
운영 반영: 완료
2026-10-03 16:15:00 +09:00
Fabricio Giglio b31d126276 Add MP3 export via offline rendering (Splendid Grand Piano), polish deployment docs 2026-05-20 18:37:58 +02:00
Fabricio Giglio dc3f25bc5f Document public-deployment hardening steps and threat model 2026-05-17 21:04:59 +02:00
Fabricio Giglio 1ff7dcfe7a Document public-deployment hardening steps and threat model 2026-05-17 21:02:55 +02:00
Fabricio Giglio 6de3c8d98e Add audio-to-MIDI import via Basic Pitch (MP3, WAV, M4A, OGG, FLAC, AAC), fix piano remount on view change 2026-05-17 08:10:03 +02:00
Fabricio Giglio bb9bd46c57 Add installable PWA, score export (MIDI/MusicXML/PDF), and persist theme across reloads 2026-05-15 13:10:18 +02:00
Fabricio Giglio 92f621d263 Update README: move fingering from roadmap to features 2026-05-11 13:51:07 +02:00
Fabricio Giglio 5c0ad9afd1 Update Node.js requirement to 22+, license year to 2025-2026, restore raw image links 2026-05-09 11:28:05 +02:00
Fabricio Giglio 0419112374 Remove image link wrappers to enable GitHub native lightbox 2026-05-09 11:22:14 +02:00
Fabricio Giglio 85115a8789 Add CI badge, dependabot config, PR template, auto-release workflow 2026-05-09 11:01:22 +02:00
Fabricio Giglio 7b925d7177 Add Ko-fi badge to README, link images to raw URLs 2026-05-06 22:49:09 +02:00
Fabricio Giglio 4bb718ae08 Add SECURITY.md, update CONTRIBUTING, issue templates, Lighthouse fixes 2026-05-06 22:38:17 +02:00
Fabricio Giglio 451054c559 Add SECURITY.md, issue templates, update CONTRIBUTING 2026-05-06 20:59:54 +02:00
Fabricio Giglio 10eb81b8c7 Add funding, CI workflow, clean up unused screenshots 2026-05-06 18:42:35 +02:00
Fabricio Giglio 9df5c76a3e Add dark mode README logo and social preview image 2026-05-06 18:33:37 +02:00
Fabricio Giglio 8f4df1451e Initial commit 2026-05-06 17:56:38 +02:00