Bir yıllık ChiselStrike'tan ne öğrendik?

Feb 02 2023
ChiselStrike'ın CEO'su, ilk yılımızdan öğrenilen dersleri paylaşıyor.
Son bir yıldır ChiselStrike'ı açıkta inşa ediyoruz. Bu süre zarfında 200'den fazla üyesi olan harika bir Discord topluluğu oluşturduk ve makul miktarda Açık Kaynak etkinliği elde ettik.

Son bir yıldır ChiselStrike'ı açıkta inşa ediyoruz. Bu süre zarfında 200'den fazla üyesi olan harika bir Discord topluluğu oluşturduk ve makul miktarda Açık Kaynak etkinliği elde ettik.

Bizler Açık Kaynak gazileriyiz, bu nedenle bizim için bunu – veya her ne inşa ediyorsak – bir Açık Kaynak projesi olarak inşa etmek her zaman kolay oldu. Ancak bir şirket olarak amacımız, insanların ChiselStrike kodunu dağıtabilecekleri bir Hizmet olarak Arka Uç teklifimizi güçlendirmek için bunu kullanmaktı.

En başından beri , ChiselStrike platformuna güç sağlamak için uçta bir SQLite çözümü oluşturmayı aklımızda tuttuk. Ancak bu hedefe yaklaştıkça ve topluluktan aldığımız diğer geri bildirimlerle birleştirdikçe, Turso adını verdiğimiz bu ürünün ana ürünümüz olması gerektiğini anladık.

Bugün, Turso'ya odaklanmak için barındırılan BaaS teklifini (ancak ChiselStrike Açık Kaynak projesini değil, aşağıda daha ayrıntılı olarak) sonlandırıyoruz.

Bir projeyi sonlandırmak asla kolay bir karar değildir. Ama hey, personelinizin% 20'sini kovmaktan, ünlü bir şahsiyetten alıntı yapmaktan ve boş bir "Tam sorumluluk alıyorum" BS e-postasını kusmaktan daha iyidir.

Bu makalede, hangi öğrenmelerin bizi bunu yapmaya ittiği ve ChiselStrike Açık Kaynak projesinin geleceği hakkında birkaç söz söylemek istiyorum.

İnsanların ChiselStrike hakkında sevdiği şeyler

Yaptığımız şeyler hakkında çok güzel geri dönüşler aldık. Kısaca, ana olanları vurgulayacağım:

Hepsi TypeScript

Standart ORM'lerin aksine, ChiselStrike, veritabanı önceliği değil, TypeScript önceliğidir. Modeller TypeScript'te tanımlanır ve bir ara temsilden otomatik olarak oluşturulmaz. İstemci API'sinin eklenmesiyle , türler her yere yayılır, bu nedenle her şey güvenlidir. Göç yok.

Geliştirici deneyimi harika

SQLite üzerine inşa edilmiştir, yerel olarak başlamak kolaydır ve onu harici veritabanlarına, karmaşık kurulumlara ve benzerlerine bağlamaya gerek yoktur.

Ayrıca, bir TypeScript sınıf moduna sahip olduğunuzda, .crud()tam bir CRUD REST API oluşturmak için ihtiyacınız olan tek şey budur. Saniyeler içinde gitmeye hazırsınız.

İnsanların ChiselStrike hakkında sevmediği şeyler

Ancak, tam olarak doğru olmayan bazı şeyler hakkında kesin geri bildirimler aldık.

kaçış kapısı yok

Soyutlamalarımız için ne kadar övgü alsak da, geliştiriciler ezici bir çoğunlukla ihtiyaç duyulduğunda SQL katmanına inebilme yeteneğine sahip olmak istediklerini söylediler. Bu, bir Açık Kaynak projesi olarak libSQL'e ve bu temel üzerine inşa edilmiş bir ürün olarak Turso'ya yaptığımız yatırımın arkasındaki ana itici güçlerden biridir.

Kodumun nerede çalıştığını anlamak kafa karıştırıcı

Sunucusuz, web geliştiricileri için ikinci doğa haline geliyor. Asıl amacımız, geliştiricilerin uygulamalarını favori sunucusuz platformlarına ve verilerle birlikte yaşayan "arka uç kodunu" ChiselStrike platformuna dağıtmalarıydı.

Ancak bu, hangi kodun nereye gittiğiyle ilgili hemen soruları gündeme getirdi. Next.js projemin bir parçası olarak ChiselStrike'ı dağıtabilir miyim? İnsanların platformda yaptığı en yaygın iki hata, tüm web uygulamalarını dağıtmak veya Vercel, Netlify veya Cloudflare üzerindeki sunucusuz işlevler kullanılarak dağıtılmak üzere ChiselStrike kodunu eklemeye çalışmaktı.

ChiselStrike Açık Kaynak arka uç projemizin geleceği

Hala Açık Kaynak projesini sürdürüyoruz, ancak yalnızca projeyi kendi kendine barındırmak isteyenler için. Fly.io ve Digital Ocean, bunun için harika platformlar veya bir sunucuya erişiminiz olan herhangi bir altyapıdır.

Başlangıçta kod ve verileri mimarimizde bağlama şeklimiz nedeniyle, ChiselStrike bir TypeScript çalışma zamanı (Deno) yerleştirir.

Artık kod barındırmama ve yalnızca veritabanı katmanına odaklanma kararı da çok cazip bazı olasılıklar sunuyor.

İlk olarak, Deno'yu yapıdan kaldırarak ve harici bir çalışma zamanına güvenerek veritabanı ürününü basitleştirebiliriz. Çalışma zamanını veritabanıyla aynı süreçte bir arada konumlandırmak, performans için harika olsa da, ilerlemek için ihtiyaç duyduğumuz esneklik için onları çok yakın bağlar. Bunun yerine geliştiriciler, arka uç kodlarını çalıştırmak için Cloudflare gibi uçta barındırılan diğer ürünlere güvenebilir.

İkincisi, veritabanına, uygulama verilerinin bütünlüğünden ödün vermeden mümkün olan en iyi uç performansını elde etmek için ön uç kodunun veritabanını doğrudan sorgulamasına izin veren yeni bir güvenlik katmanı sunabiliriz.

Tüm sadık geliştiricilerimize son sözler

Arka uçlarınızı oluşturmayı çocuk oyuncağı haline getirmek için ChiselStrike Açık Kaynak arka ucundan yararlanmaya devam edeceğinizi umuyoruz. Ve henüz Discord'umuza katılmadıysanız , biz hala oradayız!

Ve şimdiye kadar yaptıklarımızı sevdiyseniz, Turso'yu da seveceğinizden eminiz. Turso artık özel beta sürümünde ve bekleme listemize katılabilirsiniz .