İçeriğe geç

Notanica

Yakında

iPhone, iPad ve Android için geliştirilmekte olan bir nota uygulaması. Basılı sayfanın fotoğrafını çekin; notaları okur, çalar ve emin olmadığı ölçüleri işaretler.

Bu ürün geliştiriliyor, henüz yayınlanmadı.

geliştiren
Burak Altıntaş
teknoloji
Expo, React Native, TypeScript, Expo Router, OpenSheetMusicDisplay, RevenueCat, Go, Cloud Run, Cloudflare Workers, Neon Postgres, Cloudflare R2, Python, Next.js
Notanica ekran görüntüsü

Genel Bakış

Notanica, iPhone, iPad ve Android için geliştirdiğim bir nota uygulaması. Basılı bir sayfanın fotoğrafını çekiyorsunuz ya da bir PDF, MusicXML veya MIDI dosyası açıyorsunuz; uygulama notaları okuyup çalıyor. Bunun etrafında çalışma, ders ve beste araçları var; Türk makam müziği de uygulamanın içinde. Sloganı "Audi. Disce. Crea.", yani "Dinle. Öğren. Yarat."

Uygulama henüz yayında değil, yakında geliyor.

Problem

Basılı nota ses çıkarmıyor, bu yüzden bir pasajı henüz rahat okuyamayan öğrenci evde onun nasıl çalındığını duyamıyor. Notayı fotoğraftan okuyan yazılımlar da hata yapıyor ve yanlış okunan bir nota kendinden emin biçimde çalınınca öğrenci yanlışı öğreniyor. Makamda durum daha zor: tanıma motorları koma işaretlerini sıradan diyez ya da bemol olarak okuyor.

Çözüm

Notanica sayfayı okuyor, çalıyor ve emin olmadığı ölçüleri işaretliyor. Siz o ölçüleri basılı sayfayla karşılaştırıyor, yanlış bir notaya dokunup düzeltiyorsunuz. Her değişiklik geri alınabiliyor. Sonra düzeltilmiş notayı dinleyip onunla çalışıyorsunuz.

Öne Çıkan Özellikler

  • Kamerayla basılı sayfa tarama, galeriden fotoğraf seçme ya da PDF, MusicXML veya MIDI dosyası açma.
  • Emin olunmayan ölçüler kontrol için işaretleniyor. Bir notaya dokunup düzeltebilir, her değişikliği geri alabilirsiniz.
  • Çalarken tempo, A-B döngüsü, tekrarlar ve codalar, giriş sayımı. Nota adları kendi sisteminizde (C D E, do re mi ya da Almanca H). Klarnet gibi transpoze çalgılar için yazıldığı gibi ya da konser perdesinde gösterim. Her partiyi susturma, tek başına çalma ve ses ayarı. Zor bir pasajın basitleştirilmiş hâli.
  • Çalışma araçları: metronom, 53 koma kipi olan akort aleti, hız çalışması ve hatırlatmalı çalışma planı.
  • İlk notaları okumaktan akorlara ve forma kadar dersler; her alıştırma cevabınızı kontrol ediyor. Dikte, aralık ve akor tanıma ile süreli sınav.
  • Nota yazarak beste, ikinci ses ya da TAB dizeği ekleme; MusicXML, MIDI ya da PDF olarak dışa aktarma.
  • Türk makam müziği: koma işaretleri yazılıyor ve 53 koma akortta çalınıyor, makam ve usul sayfanın başında yazıyor.
  • Ebeveynin kurduğu çocuk modu: alıştırmaları sesli okuyor, ebeveyne haftalık özet gidiyor.
  • Öğretmenler için öğrenci davet etme, her öğrenciye parça verme ve ilerlemesini izleme. Sınıfta nota altı karakterlik bir kodla televizyonda ya da herhangi bir tarayıcıda açılıyor, her gruba kendi partisi verilebiliyor.
  • Yedi dil: İngilizce, Almanca, İspanyolca, Fransızca, Portekizce, Rusça ve Türkçe.

Benim Rolüm

Notanica'nın kurucusu ve tek sahibiyim. Ürünü, kapsamı ve tasarımı ben belirliyorum. Kodu yapay zeka kodlama ajanlarını yöneterek yazdırıyorum; her adım beş bağımsız uzman rolü (tasarımcı, müzik öğretmeni, konservatuvar akademisyeni, Türk müziği uzmanı ve yazılım mimarı) tarafından inceleniyor ve engelleyici bir sorun kalmayana kadar düzeltiliyor.

Teknik Yapı

  • Uygulama: Expo SDK 58, React Native 0.88, Expo Router ve TypeScript; telefon ve tablet. Nota, bir WebView içinde OpenSheetMusicDisplay ile çiziliyor. Abonelikler RevenueCat ile.
  • API: Go ile yazıldı, Google Cloud Run'da bir Cloudflare uç Worker'ının arkasında çalışıyor. Veritabanı Neon Postgres, dosyalar AB'deki Cloudflare R2'de. Ders ve model indirmelerini uç Worker doğrudan R2'den veriyor; API ve veritabanı bunun için uyanmıyor.
  • Nota okuma: Python ile yazılmış bir müzik servisi taranan sayfaları MusicXML'e çeviriyor. Her sayfayı iki optik nota tanıma motoru okuyor: homr ve ikinci görüş olarak bir motor daha. İkisinin anlaşamadığı ölçüler kullanıcıya işaretleniyor.
  • Her nota türü, ayrılmış test sayfalarında kendi doğruluk eşiğini geçince açılıyor. O zamana kadar sayfa görüntü olarak kalıyor ve kullanıcı geri çevrilmiyor.
  • Tanıtım sitesi: Cloudflare için Next.js 16 ile yazılmış statik bir site, yedi dilde.

Neden Önemli

Müzik öğrencisi haftanın çoğunu öğretmeni olmadan çalışarak geçiriyor. Notanica elindeki sayfayı ona çalıyor ve hangi ölçülere bakması gerektiğini gösteriyor. Makam çalanlar da kendi repertuvarlarını komalarıyla birlikte okuyup dinleyebiliyor.