Crate
Uygulamalarınızın dosyaları için tek depo: uygulama başına anahtar, kısa adres, üç erişim seviyesi ve imzalı bağlantı, küçük resimler, webhook, çöp kutusu ve erişim izi.
Uygulamalarınızın dosyaları için tek depo
Crate, bir ekibin işlettiği uygulamaların dosya saklaması ve sunması gerektiğinde başvurduğu merkezi depodur. Her uygulama kendi anahtarıyla bağlanır ve dosyayı tek bir uca yükler; Crate dosyayı kendi diskinde saklar, ona nerede durduğunu ele vermeyen kısa bir adres verir, erişimi kurallarınıza göre denetler ve her erişimi kayda geçirir.
Ürünü kendi ihtiyacımızdan çıkardık. Onlarca uygulama işleten bir ekipte her ürün kendi yükleme kodunu, kendi klasör düzenini ve kendi erişim kuralını taşır; bir görselin küçük hâli beş yerde ayrı üretilir, silinen dosya geri gelmez, hangi dosyaya kimin ne zaman baktığı bilinmez. Crate bu işi tek yere toplamak için yazıldı; bugün ailedeki uygulamaların dosyaları burada durur.
Bilinçli bir ürün kararı olarak dosyalar üçüncü taraf bir nesne deposunda değil, Crate'in kendi deposunda tutulur; açılacak ya da yapılandırılacak ayrı bir depolama hesabı yoktur. Dosya saklamak için hesap açılmaz, uygulamanın anahtarı yeter; panele girmek içinse Vosetu Passport hesabı kullanılır.
- Uygulama başına anahtar; geliştirme, test ve canlı ortamları ayrı
- Kısa adres: yenilendiğinde eskisi anında geçersiz
- Üç erişim seviyesi: herkese açık, özel, güvenli; süreli imzalı bağlantı
- Küçük resimler, webhook, çöp kutusu ve geri alma, erişim izi
Panelin ekranları
Uygulamalar yükler, ekip panelden yönetir. Anahtar burada üretilir, ortam sınırları burada çizilir, dosyalar buradan gezilir, yanlışlıkla silinen buradan geri gelir.
Uygulamalar
Kayıtlı uygulamalar, adları ve anahtarları; anahtar yenileme bir uygulamayı diğerlerinden bağımsız etkiler; son kullanım tarihi ve adresi kayıtlı.
Ortamlar
Geliştirme, test ve canlı ayrı çalışır; depolama kotası, yükleme boyutu, izinli uzantılar, imzalı bağlantı süresi, küçük resim genişlikleri, webhook adresi ve sürümleme ortam başına.
Anahtarlar
Okuma ya da yazma yetkili anahtarlar; bir uygulama aynı anda birden çok anahtar taşır, böylece anahtar kesintisiz döndürülür; süreli ya da süresiz.
Dosya gezgini
Bütün uygulamaların dosyaları tek ekranda; uygulama, ortam, erişim seviyesi, referans ve tarihe göre süzgeç; listeden çıkmadan görsel önizleme.
Erişim izi
Her okuma ve yazma kayıtlı: isteği yapan uygulama, eylem ve adres. Salt okunur; başarısız denemelere süzülür.
Çöp kutusu
Kaldırılan dosya ortam başına ayarlanan süre boyunca çöpte bekler; geri alma dosyayı tam yerine döndürür; hemen kalıcı silme de mümkündür.
Giriş paneli
Uygulama ve ortam sayısı, toplam dosya, kota doluluğu, son haftaların günlük yükleme ve indirme sayısı, son başarısız istekler.
Entegrasyon
Yükleme, indirme, imzalı bağlantı, adres yenileme ve görsel türevi için hazır istek örnekleri; kişisel API jetonları.
Akışın kalbi
Bir dosyanın yolculuğu
Uygulama panelde kaydedilir, ortamı seçilir, anahtarı üretilir. Yükleme isteği anahtarla kimliklenir; dosya çok parçalı form ya da metin gövdesiyle gelir. Crate önce ortamın sınırlarına bakar: boyut, kota, izinli uzantılar ve dosyanın gerçek içeriğinin uzantısıyla uyuşup uyuşmadığı. Etkin içerik taşıyabilen biçimler uzantıdan bağımsız reddedilir. Kabul edilen dosya kendi diskine yazılır ve yanıtta kısa adresi döner. Aynı dosya anahtarıyla yeniden yüklemek dosyayı yerinde günceller; üzerine yazma kapatılırsa sessizce değiştirmek yerine hata döner.
- Boyut, kota ve uzantı sınırları ortam başına; içerik gerçek baytlardan denetlenir
- Üzerine yazma varsayılan; kapatılırsa hata döner
- Sürümleme açıkken değiştirilen dosya saklanır ve geri yüklenir
- İmzalı yükleme: tarayıcı anahtarı görmeden doğrudan yükler
Adres ve erişim
Her dosya kısa bir jeton ve kendi uzantısından oluşan bir adres alır; adres klasör adı ya da iç yapı taşımaz, dosya sonradan değişse bile aynı kalır. Yapıyı görmeyi tercih eden uygulamalar için adlandırılmış bölümlerden kurulan yol tabanlı adres de vardır; iki biçim yan yana çalışır. Bir adres amaçlanandan geniş paylaşıldıysa dosyaya dokunmadan yenilenir ve eskisi anında çözülmez olur. Erişim seviyesi dosyayla birlikte taşınır ve her istekte yeniden karar verilir: herkese açık dosya adresi bilene açılır, özel ve güvenli dosya yalnız uygulamanın anahtarıyla ya da süresi dolan imzalı bağlantıyla verilir. Güvenli dosya tarayıcıda açılmak yerine indirilir ve en kısa ömürlü bağlantıyı alır.
- Kısa adres ya da yol tabanlı adres; ikisi yan yana
- Adres yenileme yalnız yazma anahtarıyla; eskisi kalıcı düşer
- Erişim kararı her istekte, yükleme anında değil
- İmzalı bağlantı: anahtar gerekmeden sınırlı süre; süre tavana kırpılır
Görseller ve dağıtım
Bir görselin küçük hâli, ortam için izin verilen genişliklerde orijinaliyle birlikte hazırlanır; genişlik, yükseklik, biçim ve kalite adres üzerinden istenir, biçim boş bırakılırsa ziyaretçinin tarayıcısına göre seçilir. Listede olmayan bir boyut reddedilir, yani türevler denetim dışına çıkmaz. Dosya yüklendiğinde, değiştirildiğinde, silindiğinde, geri alındığında ya da adresi yenilendiğinde ortamın webhook adresine imzalı bir bildirim gider; alıcı yanıt vermezse teslim birkaç kez yeniden denenir.
- Küçük resimler yalnız izinli genişliklerde; yalnız görseller
- Biçim açıkça ya da tarayıcıya göre otomatik
- Ortam başına tek webhook adresi bütün dosya olaylarını kapsar
- İmzalı bildirim: kaynağın Crate olduğu doğrulanır
Silme, geri alma ve iz
Silmenin üç ayrı fiili vardır. Kaldırılan dosya önce çöp kutusuna gider ve ortam için ayarlanan süre boyunca orada bekler; geri alma dosyayı tam olarak olduğu yere döndürür. Uygulama isterse dosyanın hemen kalıcı olarak kaldırılmasını ister. Çöpü boşaltmak yalnız o an filtrelenmiş olanı siler, asla her şeyi birden değil. Bütün bunlar ve her okuma, salt okunur bir erişim izine düşer: isteği yapan uygulama, eylem, adres ve sonuç. Burada hiçbir şey düzenlenemez ya da silinemez; neyin neden reddedildiğini görmek için yalnız başarısız denemelere süzülür.
- Çöpe taşı, kalıcı sil, çöpü boşalt: üç ayrı fiil
- Bekleme süresi ortam başına
- Salt okunur erişim izi; başarısıza süzme
- Kişisel API jetonları yönetim ekranlarına betikle erişim için
Yetenek kataloğu
- Tek yükleme ucu, uygulama başına anahtar
- Çok parçalı form ya da metin gövdesi
- Üzerine yazma açık / kapalı
- Sürümleme: değiştirilen dosya saklanır, geri yüklenir
- İmzalı yükleme: tarayıcıdan doğrudan
- Boyut, kota, uzantı ve içerik denetimi
- Uygulama kaydı: ad, açıklama
- Geliştirme / test / canlı ortamları
- Ortam başına kota, boyut sınırı, izinli uzantılar
- Okuma ve yazma anahtarları; süreli ya da süresiz
- Kesintisiz anahtar döndürme
- Anahtarın son kullanım tarihi ve adresi
- Kısa (opak) adres
- Yol tabanlı adres; biçim ortam başına
- Adres yenileme: eskisi anında geçersiz
- Uzantı uyuşmazlığı reddedilir
- Herkese açık / özel / güvenli
- Her istekte erişim kararı
- Süreli imzalı bağlantı; tavana kırpılır
- Güvenli dosya indirilir, tarayıcıda açılmaz
- Anahtar tarayıcıya hiç gitmez
- Küçük resimler: izinli genişlikler, biçim, kalite
- Tarayıcıya göre otomatik biçim
- Webhook: yükleme, silme, geri alma, kalıcı silme, adres yenileme
- İmzalı bildirim ve yeniden deneme
- Dosya gezgini: süzgeç, önizleme, ayrıntı
- Referans ve etiketler
- Salt okunur erişim izi
- Çöp kutusu, geri alma, kalıcı silme, çöpü boşalt
- Giriş paneli: kota, dosya, günlük yükleme / indirme
- Kişisel API jetonları
- Markalar ve şubeler
- Modül marketi
- Abonelik durumu ve kotalar
- Vosetu Passport ile giriş; yerel parola yok
- Türkçe ve İngilizce
Kurulum ve paketler
Crate bulutta abonelikle çalışır: panel ve depo bizde, uygulamalarınız yalnız anahtarlarıyla yükler ve okur. Bir uygulamayı bağlamak için sunucunuza hiçbir şey kurulmaz, ayrı bir depolama hesabı açılmaz; herhangi bir dilden düz HTTP isteğiyle çağrılır. Ziyaretçiye dosya göstermek için anahtar tarayıcıya verilmez; ya herkese açık adres ya da uygulamanın kendi sunucusunda ürettiği imzalı bağlantı kullanılır.
Paketler kaç uygulama bağladığınıza, ne kadar depolama ve kaç dosya kullandığınıza göre ölçeklenir; dahilden fazla uygulama aylık ek ücretle eklenir. Giriş paketi yükleme ucunu, kısa adresleri, üç erişim seviyesini, adres yenilemeyi ve erişim izini kapsar; ekip paketi webhook'ları, küçük resimleri ve çöp kutusu ile geri almayı ekler; kurumsal paket daha geniş kotayla gelir. Her paket kart bilgisi istemeyen ücretsiz denemeyle başlar; güncel liste ve tutarlar ürünün kendi fiyat sayfasındadır.
Kota dolduğunda yeni yükleme paket yükseltilene kadar reddedilir; mevcut dosyalar erişilebilir kalır. Faturalama tarafında bir aksaklık olursa hizmet kendiliğinden kesilmez: uygulamalarınızın sunduğu dosyalar sunulmaya devam eder.
- Bulut aboneliği; sunucunuza kurulum ve ayrı depolama hesabı yok
- Uygulama, depolama ve dosya sayısı bazlı paketler
- Kartsız ücretsiz deneme
- Kota dolunca yükleme durur, mevcut dosyalar sunulur
Beş adımda ilk dosya
1 · Uygulamayı kaydedin
Passport ile panele girin, uygulamanın adını yazın; ortamını seçip yazma anahtarını üretin.
2 · Ortamın sınırlarını çizin
Depolama kotasını, yükleme boyutunu, izinli uzantıları, imzalı bağlantı süresini ve küçük resim genişliklerini belirleyin.
3 · İlk dosyayı yükleyin
Uygulamadan anahtar başlığıyla yükleme ucunu çağırın; yanıttaki kısa adres dosyaya ulaşmanın yoludur.
4 · Erişimi kurun
Herkese açık dosyaları adresle sunun; özel ve güvenli dosyalar için uygulamanızın sunucusunda imzalı bağlantı üretin.
5 · Dağıtımı bağlayın
Webhook adresini girin ki diğer sistemler dosya olaylarını duysun; görseller için izinli genişlikleri kullanarak küçük resim isteyin.
Teknoloji
- .NET 9 Web API
- PostgreSQL yalnız dizin; dosyalar kendi diskinde
- Önbellekli indirme yolu
- Arka plan işleri: çöp temizliği, bakım, webhook teslimi
- Düz HTTP ile her dilden yükleme ve okuma
- Uygulama anahtarı başlığı
- İmzalı bağlantı ve imzalı yükleme
- Kişisel API jetonları
- Angular 20
- Türkçe ve İngilizce, açık / koyu tema
- Docker konteyner, Jenkins ile sürekli dağıtım
- Passport tek oturum açma
- Abonelik ve kotalar merkezî abonelik servisinden
Bir dosya deposu, uygulamanın 'bu dosyayı kim, ne zaman, hangi adresle açtı' sorusuna cevap verebildiğinde işini yapıyor demektir. Crate bu yüzden erişim kararını her istekte yeniden verir ve her isteği kayda geçirir.
Sık sorulanlar
Crate nedir ve ne işe yarar?
Crate, birden çok uygulamanın dosya saklama ve sunma işini tek merkezde toplayan bir dosya deposudur. Uygulamalar kendi anahtarlarıyla tek bir uca yükler; Crate dosyayı kendi diskinde saklar, kısa bir adres verir, erişimi herkese açık, özel ya da güvenli seviyesine göre her istekte denetler, küçük resimleri hazırlar, dosya olaylarını webhook ile bildirir ve her erişimi kayda geçirir.
Dosyalar nerede saklanıyor?
Crate'in kendi deposunda, kendi diskinde. Üçüncü taraf bir nesne depolama hizmeti kullanılmaz; açılacak ya da yapılandırılacak ayrı bir hesap yoktur. Veritabanı yalnız dizin görevi görür.
Uygulamamı Crate'e nasıl bağlarım?
Panelde uygulamayı kaydedip ortamını seçer ve anahtarını üretirsiniz. Uygulama bu anahtarı başlık olarak taşıyan bir HTTP isteğiyle yükleme ucunu çağırır; hangi dilde yazıldığı fark etmez, ek kütüphane gerekmez. Panelde yükleme, indirme, imzalı bağlantı ve adres yenileme için hazır istek örnekleri vardır.
Bir dosyayı kimin açabileceğini nasıl belirlerim?
Yüklerken erişim seviyesini seçersiniz, sonradan da değiştirebilirsiniz. Herkese açık dosya adresi bilen herkese açılır. Özel ve güvenli dosya yalnız uygulamanın anahtarını taşıyan isteğe ya da süresi dolan imzalı bir bağlantıya verilir; güvenli dosya tarayıcıda açılmak yerine indirilir ve en kısa ömürlü bağlantıyı alır. Karar her istekte yeniden verilir.
Bir adres yanlış kişilerle paylaşıldıysa ne yaparım?
Adresi yenilersiniz. Dosya taşınmaz ve yeniden yüklenmez; yeni adres verildiği anda eski adres çözülmez olur ve bir daha geri gelmez. Yenilemeyi yalnız yazma yetkili bir anahtar yapabilir.
Yanlışlıkla silinen dosya geri gelir mi?
Evet. Kaldırılan dosya önce çöp kutusuna gider ve ortam için ayarlanan süre boyunca orada bekler; geri alma dosyayı tam olarak olduğu yere, aynı adresle döndürür. Uygulama isterse dosyayı hemen kalıcı olarak da sildirebilir; o zaman geri gelmez.
Görsellerin küçük hâlleri nasıl üretilir?
Ortam için izin verilen genişlikleri tanımlarsınız; uygulama görselin adresine genişlik, isteğe bağlı yükseklik, biçim ve kalite ekleyerek küçük hâlini ister. Biçim boş bırakılırsa ziyaretçinin tarayıcısına göre seçilir. Listede olmayan bir boyut reddedilir; yalnız görsellere uygulanır, diğer dosyalar yüklendiği gibi sunulur.
Kota dolunca ne olur?
Yeni yüklemeler paket yükseltilene kadar reddedilir; mevcut dosyalar erişilebilir kalır ve sunulmaya devam eder. Durum abonelik ekranında görünür. Faturalama tarafında geçici bir aksaklık olursa hizmet kendiliğinden kesilmez.
Dosyalarınızı tek depoya taşıyın
Kaç uygulamanız olduğunu ve dosyaların bugün nerede durduğunu anlatın; ilk uygulamayı birlikte bağlayalım, ortam sınırlarını ve erişim seviyelerini sizin düzeninize göre kuralım. Karşınızda satış ekibi değil, ürünü yazan ekip olur.
Bugün bir adım atalım
İhtiyacınızı bir mesajla anlatın; 24 saat içinde dönüş yapalım, yol haritasını birlikte çıkaralım.