shadcn-ui benzeri, kodu yeniden kullanmak için geliştirilmiş bir CLI aracı; npm paketi yerine gerçek kodu doğrudan projeye kurarak özgürce değiştirmeye olanak tanır. jsrepo, kod yeniden kullanımına yönelik registry oluşturma ve dağıtım sürecini birleştirerek bu süreci daha basit ve bakımı daha kolay hale getirmeyi amaçlar.
Başlıca özellikler
- shadcn/ui yaklaşımı: Bileşenleri npm paketi olarak kurmak yerine, CLI üzerinden gerçek kod dosyalarını doğrudan projeye ekler. Kaynak kod üzerinde doğrudan kontrol sağlar ve istenildiği gibi değiştirilebilir.
- Kendi registry'niz: Herkes kendi kod registry'sini oluşturup herkese açık olarak paylaşabilir veya özel kullanım için tutabilir.
- MCP entegrasyonu: Model Context Protocol (MCP) üzerinden Cursor, Windsurf gibi yapay zeka tabanlı kod editörleriyle entegre olur. Yapay zeka, JSRepo registry'sindeki bileşenleri anlayabilir ve yalnızca doğal dil komutlarıyla bileşen arama ya da projeye ekleme gibi işlemleri gerçekleştirebilir.
- Esnek barındırma: GitHub, GitLab, BitBucket gibi çeşitli Git sağlayıcılarıyla self-hosted kullanımın yanı sıra jsrepo.com üzerinden barındırmayı da destekler.
- Güçlü CLI:
addkomutuyla kolayca kod blokları ekler,updatekomutuyla ise etkileşimli güncelleme süreci sunar. - Güvenli sürüm yönetimi: SemVer'i tam olarak destekleyerek öngörülebilir yükseltmelere olanak tanır ve Changesets gibi mevcut çözümlerle de uyumludur.
- Ekip iş birliği: Private Registries üzerinden ekip içinde kodun güvenli şekilde paylaşılmasını ve yönetilmesini sağlar.
- Dinamik registry: Çalışma zamanında bileşenleri dinamik olarak yüklemeye yönelik gelişmiş özellikler sunar.
- Ek özellikler: Raycast uzantısı gibi geliştirici deneyimini iyileştiren entegrasyonlar sağlar.
Barındırma yöntemlerinin karşılaştırması: jsrepo.com vs. Git Provider (self-hosted)
JSRepo, registry barındırma için genel olarak iki seçenek sunar.
jsrepo.com (yönetilen barındırma)
- En kolay yöntem: Ek ayar yapmadan GitHub hesabıyla giriş yapıp registry'nizi hemen yayımlayabilirsiniz.
- Güçlü sürüm yönetimi: Git tag'lerinden farklı olarak, bir kez yayımlanan sürüm sonradan değiştirilemez (immutable); bu da daha güvenli ve daha güvenilir SemVer sürüm yönetimi sağlar.
- Özel registry:
jsrepo authkomutuyla ekip üyeleri arasında özel kodun güvenli paylaşımını varsayılan olarak destekler. - Performans ve kullanım kolaylığı: Daha iyi performans sunar ve arama ya da analiz gibi ek özellikler içerir.
Git Provider (self-hosted)
- Tam kontrol: GitHub, GitLab gibi Git depolarını doğrudan registry olarak kullanarak her şeyi doğrudan kontrol etmenizi sağlar.
- Temel sürüm yönetimi: Sürümler Git tag'leriyle yönetilir; ancak tag'ler değiştirilebilir olduğu için jsrepo.com'a kıyasla daha az güvenilir olabilir.
- Elle yapılandırma gerekir: Özel registry erişimi gibi konular için kimlik doğrulama ve yetki ayarlarını doğrudan yönetmeniz gerekir.
Kullanım örnekleri
https://github.com/shyakadavis/geist
https://github.com/ieedan/shadcn-svelte-extras
Henüz yorum yok.