HN Açıklandı: Çevrimdışı öncelikli ve şifreli not uygulaması Unforget
(unforget.computing-den.com)- Unforget, notları önce yerelde yazıp şifreli senkronizasyonla kaldığı yerden sürdürmeyi sağlayan minimal bir not uygulaması; gizlilik ile cihazlar arası kullanılabilirliği birlikte öne çıkarıyor
- Progressive Web App yapısıyla tarayıcı, masaüstü ve mobilde kullanılabiliyor; Electron.js olmadan çalışıyor
- Markdown yazımı, JSON biçiminde tek tıkla dışa aktarma, açık API, self-hosting ve bulut seçenekleri sunuyor
- Ücretsiz kayıtla tamamen şifrelenmiş bulut yedekleme ve senkronizasyon kullanılabiliyor, e-posta veya telefon numarası gerekmiyor
- Google Keep, Apple Notes, Standard Notes içe aktarmayı destekliyor ancak kurulabilirlik durumu ve yöntemleri tarayıcıya göre değişiyor
Çevrimdışı öncelikli notlar ve veri kontrolü
- Unforget, minimal bir çevrimdışı öncelikli not alma uygulaması ve uçtan uca şifreli senkronizasyon sunuyor
-
Uygulama biçimi ve kullanım ortamı
- Progressive Web App olarak tarayıcı, masaüstü ve mobilde kullanılabiliyor
- Electron.js olmadan çalışıyor ve isteğe bağlı tek tıkla kurulum desteği sunuyor
- Gizlilik öncelikli bir tasarımı öne çıkarıyor ve MIT lisanslı açık kaynak olarak sunuluyor
-
Yazma, taşıma ve dışa aktarma
- Markdown yazımını destekliyor
- Google Keep, Apple Notes ve Standard Notes'tan içe aktarma yapılabiliyor
- Not verileri JSON biçiminde tek tıkla dışa aktarılabiliyor
-
Senkronizasyon ve genişletilebilirlik
- Ücretsiz kayıt ile notlar tamamen şifrelenmiş durumda buluta yedeklenebiliyor ve birden çok cihaz arasında senkronize edilebiliyor
- Kayıt için e-posta veya telefon numarası gerekmiyor
- Hem self-hosting hem de bulut seçenekleri sunuluyor
- Açık API üzerinden özel istemciler geliştirilebiliyor
Tarayıcıya göre kurulum yöntemi
- Unforget doğrudan tarayıcıda kullanılabiliyor, ancak kurulum yöntemi ortama göre değişiyor
-
Kurulum desteği
- Chrome: URL çubuğundaki kurulum simgesini kullanın
- Edge: URL çubuğundaki kurulum simgesini kullanın
- Android Browser: Menü → Add to Home Screen
- Safari Desktop: Share → Add to Dock
- Safari iOS: Share → Add to Home Screen
- Firefox Android: URL çubuğundaki kurulum simgesini kullanın
-
Kurulum kısıtları
- Firefox Desktop'ta kurulum yapılamıyor
1 yorum
Hacker News yorumları
Önce çevrimdışı PWA yapmış olanların deneyimlerini merak ediyorum
Web’i yalnızca dağıtım aracı, tarayıcıyı da çalışma ortamı olarak kullanma fikri çekici; ama yerel depolamanın ufak tefek zorlukları beni düşündürüyor
Veriler
~/.app/app.datgibi bir dosya olarak görünmediği için “gözden ırak olan gönülden de ırak olur” hissi veriyor; tarayıcı güncellemesiyle bir anda kaybolma ihtimali ve web’in temel modelinde şema sürüm yönetimini ele almanın karmaşıklığı da kafama takılıyorYeni bir bilgisayara geçerken veri taşınabilirliği de sorun; yalnızca GitHub hesabıyla sunucusuz dağıtım yapabilmek çekici ama veri tarafı hâlâ güvensiz görünüyor
SQLite gibi bir şeyin olmamasını bir kenara bıraksak bile, SQLite’ı bir WebAssembly yığını olarak paketleme yöntemi hiç içime sinmiyor
Yine de bir depoda birden çok anahtarla indeks oluştururken her anahtarı artan/azalan olarak belirleyememek gibi can sıkıcı kısıtları var
PWA’yı ana ekrana ekleyip yüklediyseniz, tarayıcının güncelleme gibi nedenlerle IndexedDB’yi silmemesi gerekir; pratikte de tarayıcılar buna uyuyor gibi görünüyor
PWA geliştirme deneyimi genel olarak karışıktı ve uygulama türüne çok bağlı. Şifreli bulut yedekleme ve senkronizasyon yapabilen bir not uygulamasıysa PWA en iyi seçenek olabilir; ama dosya sistemi erişimi gibi platformla daha derin entegrasyon gerekiyorsa PWA’dan kaçınırım
Bir diğer sorun da iOS Safari; arka plan senkronizasyonu veya çevrimdışı push bildirimleri gibi birçok PWA özelliği eksik ve ileride de desteklenme ihtimali düşük görünüyor
Belirli bir uygulama için PWA’yı değerlendirip değerlendirmediğini merak ediyorum
Normalde bile sinir bozucu bir davranış; sunucu tarafı yedek yoksa basit bir rahatsızlığın çok ötesine geçer
Bu uyarının
localStorageiçin de geçerli olup olmadığından emin değilim; ama deneyimime göre IndexedDB için geçerliydi ve Electron uygulamalarında da öyle göründüOldukça iyi çalışıyor; ama dezavantajı, kullanıcının uygulamayı her kullandığında dosyayı veya dizini yeniden seçmek zorunda olması ve dosya seçiciyi “iyi bilinen dizinler” dışındaki belirli bir dizinden başlatmaya zorlamanın bir yolu olmaması
~/.app/app.datgibi bir dosyada tutmak mümkünReferans: https://developer.chrome.com/docs/capabilities/web-apis/file...
better-sqlite3[0] kullanıyor ve veritabanınıprivate/unforget.db[1] adlı bir dosyada saklıyor gibi görünüyorSQLite deneyimim yok; bu yüzden o dosyanın
localStoragekadar uçucu olup olmadığını bilmiyorum[0] https://www.npmjs.com/package/better-sqlite3
[1] https://github.com/computing-den/unforget/blob/master/src/se...
Güzel görünüyor. Bir önerim: not yazma akışını daha net göstermeniz iyi olur
Başlıklı Markdown belgelerinin klasör/hiyerarşi yapısıyla mı düzenlendiği, başlıksız ya da isteğe bağlı başlıklı “kart”ların etiketlerle mi düzenlendiği, yoksa sürekli ekleme yapılan uzun bir Markdown belgesi mi olduğu henüz net değil
Bunların her biri ana akım not sistemlerine benzeyen iş akışları; hangi akışı tasarlayıp optimize ettiğinizi anlamak isterim
Google Keep kullanıcısı olarak başladığınız ipucu yardımcı oluyor; ama Homebrew metin dosyaları, Simplenote, Obsidian vb. kullandım ve Evernote ya da OneNote hakkında da bir miktar fikrim var, bu yüzden kullanım biçimine dair birkaç yön tabelası daha iyi olur
Hızlıca yanıtlamak gerekirse, genellikle birkaç satırdan ya da yapılacaklar onay kutularından oluşan çok küçük notlar tutuyorum ve her fikir için bir not ayırıyorum. Ancak bir fikir birkaç gün içinde büyürse o not da çok daha büyüyebilir; not boyutu için bir sınır yok
Standart Markdown’daki gibi
#ile not başlığı belirleyebilirsiniz; ilk satırdan sonra boş bir satır bırakırsanız ilk satır otomatik olarak başlık olurAyrı bir etiket kavramı yok; ama
#someTagyazıp doğrudan#someTagarayabilirsiniz. Arama özelliği tüm notlarda basit alt dize aramasıdır; kök bulma gibi gelişmiş özellikler yokPriavcy→PrivacySeyahat ederken Google Keep’e not almaya çalışıp bazen çevrimdışıyken çalışmadığını fark ettiğimi hatırlıyorum
Hangi tarayıcıyı kullandığınızı merak ediyorum
GitHub falvored→GitHub flavoredNotlar ağırlaştığında https://simplemde.com/ gibi bir şeyi entegre etmeyi planlayıp planlamadıklarını merak ediyorum
Tablo vb. içeren notlarda Markdown söz dizimini sürekli düşünmektense daha basit bir WYSIWYG düzenleyici tercih ederim
Bunu da bir deneyeceğim
Harika iş, umarım daha da gelişir
Aklıma Joplin geldi; bu uygulamayı hangi yöne götürmeyi düşündüğünü merak ediyorum
Örneğin iş akışı yeterince hızlı hissettirmiyordu. Uygulamayı açıp en fazla bir kez dokunduktan sonra hemen yazmaya başlayabilmeliyim; menüye gitmeden ya da başka düğmelere basmadan birden fazla yapılacak iş öğesi girebilmeliyim. Masaüstünde zaten her şey klavye odaklı olmalı
Yani UI’ın araya girmemesini istiyorum ve birçok not uygulamasının bunu kaçırdığını düşünüyorum
Yön olarak, başka uygulamalardan geçişi kolaylaştırmak istiyorum. Zaten Google Keep içe aktarması var ama çok daha fazlası olmalı
Açık API olduğu için Emacs, VS Code, Vim istemcileri ya da entegrasyonları da çıksa iyi olur
Bunun dışında şu an ihtiyaçlarımın neredeyse tamamını karşılıyor
Daha iyi bir yapılandırılmış bilgi deposunu sürekli arıyorum; normalde Electron uygulamalarından veya masaüstü JavaScript’inden kaçınsam da en çok deneme sanki o taraftan çıkıyor
Bir JavaScript uygulamasıysa Mermaid diyagram desteğini düşünüp düşünmediğini merak ediyorum. Ağır olsa da, bugünlerde Joplin’i notlar için kullanma sebebim Mermaid söz diziminin düz Markdown’a kıyasla oyunu değiştirmesi
https://mermaid.js.org/
Son zamanlarda Android not uygulamalarında benzer bir bunalmışlık hissederken oldukça iyi bir uygulama buldum ve paylaşmak istiyorum
Zettel Notes[1] adlı bir uygulama; tamamen çevrimdışı, birden fazla eşitleme seçeneğini destekliyor ve notlar dizinlerde saklanan basit Markdown dosyaları
[1] https://play.google.com/store/apps/details?id=org.eu.thedoc....
Kendi sunucumda barındırabileceğim, hem mobilde hem masaüstünde iyi görünen bir not uygulamasını hep arıyorum
Bir gün Docker konteyneri yayımlamayı planlayıp planlamadığını merak ediyorum
Harika. Yerel uygulama hakkında daha fazla bilgi verip veremeyeceğini merak ediyorum
Apple Notes gibi yerel, hafif ve hızlı bir şey arıyorum
Eski bir iPhone’da uzun süredir bizzat kullandım; hafif ve hızlı
Kurmak için Safari’de Paylaş → Ana Ekrana Ekle’ye gitmek yeterli
Eşitleme için ne kullandığını merak ediyorum
Çeşitli CRDT çözümlerine baktım ama ne kullanmam gerektiğinden emin olamadım;
package.jsoniçinde de belirli bir CRDT ya da eşitleme kütüphanesi bulamadımKendi eşitlemesini yapıyorsa çakışmaları nasıl ele aldığını merak ediyorum
if (a.modification_time > b.modification_time) ...Hepsi bu. Diğer özelliklerde olduğu gibi başta CRDT uygulamayı düşünmüştüm ama pratikte eksikliğini hissetmediğimi fark ettim
Aynı notu birden çok kullanıcının düzenlediği ortak çalışma düzenleyicisi olmadığı için CRDT pek faydalı değil
Kişisel bir not uygulamasında CRDT’nin gerekli hale geldiği durumun, birden fazla cihazın tamamı çevrimdışıyken aynı notu aynı anda düzenlemesi gibi durumlar olduğunu düşünüyorum