Ghi nguồn
App được dựng trên công sức của nhiều người đã chia sẻ tự do. Cảm ơn họ.
Tiếng violin
Mười mẫu âm violin lấy từ bộ VSCO-2 Community Edition của Versilian Studios (Sam Gossner), phần Solo Violin, kéo vĩ có rung, cường độ nhỏ. Bộ mẫu thuộc phạm vi công cộng theo CC0 1.0.
Chúng tôi cắt mỗi mẫu còn 2,2 giây và chỉnh lại những mẫu thu hơi lệch cao độ — mẫu Đô4 gốc cao hơn chuẩn 23,9 cent — để tiếng đàn app phát ra là tiếng đúng.
Phông chữ và ký hiệu nhạc
Cả ba theo giấy phép SIL Open Font License 1.1.
| Phông | Dùng cho | Tác giả | Giấy phép |
|---|---|---|---|
| Bravura | Khoá nhạc, nốt nhạc, dấu hoá | Steinberg Media Technologies GmbH | OFL 1.1 |
| Lora | Tiêu đề và tên nốt cỡ lớn | The Lora Project Authors | OFL 1.1 |
| Be Vietnam Pro | Chữ còn lại | The Be Vietnam Pro Project Authors | OFL 1.1 |
Tệp Lora và Be Vietnam Pro là bản do Google Fonts chia sẵn theo bảng chữ latin và tiếng Việt, được phát lại nguyên vẹn, không sửa. Bravura đi kèm thư viện VexFlow; trang giới thiệu vẽ lại bốn ký hiệu của nó thành hình.
Thư viện mã nguồn mở
| Thư viện | Dùng cho | Giấy phép |
|---|---|---|
| React | Giao diện app | MIT |
| VexFlow | Vẽ khuông nhạc | MIT |
| Tone.js | Phát tiếng violin | MIT |
| standardized-audio-context | Âm thanh chạy giống nhau trên mọi trình duyệt | MIT |
| ts-fsrs | Lịch ôn tập | MIT |
| Dexie.js | Lưu tiến độ trong trình duyệt | Apache 2.0 |
| Zustand | Trạng thái phiên học | MIT |
| Workbox | Cài app vào màn hình chính | MIT |
Nguyên văn giấy phép và lời ghi bản quyền của từng thư viện, kể cả những gói chúng kéo theo, nằm trong tệp giấy phép thư viện.
Phương pháp
- Dò cao độ: thuật toán YIN của Alain de Cheveigné và Hideki Kawahara (2002), chạy ngay trên máy.
- Lịch ôn tập: FSRS của Jarrett Ye và cộng đồng open-spaced-repetition.