SSS
Genel
Mockomat nedir?
Mockomat, bir domain modelleme ve API simülasyon platformudur. Veri modelini görsel olarak tanımlar, gerçekçi veri kaynaklarına eşler ve backend kodu yazmadan anında canlı bir GraphQL API elde edersin. Modelin hazır olduğunda, tamamen sana ait olan, üretime hazır bir NestJS backend'i dışa aktarabilirsin.
Mockomat kimin için?
Mockomat şunlar için tasarlanmıştır:
- Frontend geliştiriciler — gerçek API hazır olmadan önce geliştirme yapmak için gerçekçi bir backend'e ihtiyaç duyanlar.
- Full-stack mühendisler — domain modellerini prototiplemek ve API davranışını hızla doğrulamak isteyenler.
- Ajanslar — demolar ve geliştirme için hızlı mock API'lere ihtiyaç duyan müşteri projeleri inşa edenler.
- Mimarlar — uygulamaya geçmeden önce domain yapısını ve API sözleşmelerini doğrulamak isteyenler.
- Eğitimciler — API tasarımı, GraphQL veya domain odaklı geliştirme öğretenler.
- Takımlar — paralel frontend ve backend geliştirmesi için paylaşılan, gerçekçi bir mock API'ye ihtiyaç duyanlar.
Mockomat sadece bir mock sunucu mudur?
Hayır. Runtime simülasyonu bir sonuçtur, ancak temel değer, modelden uygulama teslimine kadar domain düzeyinde kontroldür. Mockomat, domain modelleme → API tanımı → runtime doğrulama → kod oluşturma yolunda yapılandırılmış bir yol sunar. Mock API, mimarini doğrulamak için bir araçtır, yalnızca sahte veri sunmak için değil.
Mockomat, yapay zeka araçlarının yerini alıyor mu?
Hayır. Yapay zeka kod oluşturmayı hızlandırır; Mockomat, sistemler geliştikçe yapıyı ve amacı açık tutar. Birbirlerini tamamlarlar: kodu hızla oluşturmak için yapay zekayı kullan, altta yatan domain modelinin ve API sözleşmelerinin tutarlı, incelenebilir ve izlenebilir kalmasını sağlamak için Mockomat'ı kullan.
Mockomat, Postman veya Stoplight gibi araçlarla nasıl karşılaştırılır?
Postman ve Stoplight, API testi ve dokümantasyonu için mükemmel araçlardır. Mockomat farklı bir seviyede çalışır:
- Postman mevcut API'leri test etmeye odaklanır. Mockomat, bir domain modelinden API oluşturur.
- Stoplight API tasarımı ve dokümantasyonuna odaklanır. Mockomat, runtime simülasyonu ve kod oluşturma ekler.
- Mockomat tam pipeline'ı kapsar: model → simülasyon → doğrulama → backend oluşturma. Bir test aracı değildir — bir modelleme ve oluşturma platformudur.
Başlarken
Hesap oluşturmadan başlayabilir miyim?
Evet. Misafir modu (Quick katmanı) kayıt olmadan hemen başlamanı sağlar. Public GraphQL endpoint'i olan bir geçici proje elde edersin. Çalışman tarayıcı oturumuna bağlıdır — kaydetmek istediğinde bir hesap oluştur.
Quick ve Free arasındaki fark nedir?
| Quick | Free | |
|---|---|---|
| Kayıt | Gerekmez | Hesap gerektirir |
| Projeler | 1 geçici | 5'e kadar kalıcı |
| Kalıcılık | Yalnızca oturum (sekme kapatıldığında kaybolur) | Oturumlar arasında kaydedilir |
| API istekleri | IP başına hız sınırlı | Günlük 1.000 |
| Endpoint'ler | Public | Public |
Quick anında keşfetme içindir. Free sürekli çalışma içindir.
Çalışan bir mock API kurmak ne kadar sürer?
Birkaç entity ve ilişkiye sahip temel bir model için yaklaşık 15 dakika. Adım adım kılavuz için Başlarken rehberine bak.
Veri ve Eşleme
Mockomat hangi veri kaynaklarını kullanıyor?
Mockomat, alan değerleri oluşturmak için üç eşleme türünü destekler:
- OFF_FIELD — gerçekçi, çeşitli veriler için gerçek dünya veri seti alanlarına eşler (örneğin Open Food Facts).
- FAKE — Faker kullanarak sentetik veri oluşturur: isimler, e-postalar, adresler, tarihler, fiyatlar ve daha fazlası.
- CONST — her kayıt için sabit bir değer döndürür (örneğin
"active"gibi bir varsayılan durum).
Enterprise müşteriler ayrıca özel tescilli veri setleri yükleyebilir.
Veri gerçekçi mi?
Evet. OFF_FIELD eşlemeleri, açık lisanslı veri setlerinden gerçek ürün verilerini kullanır ve Faker, gerçek dünya kalıplarını izleyen gerçekçi sentetik veriler oluşturur (doğru isim formatları, geçerli e-posta yapıları, gerçekçi fiyat aralıkları). Veri rastgele saçmalık değildir — otantik hissettirecek şekilde tasarlanmıştır.
Veri gizliliği konusunda ne dersin?
Mockomat, proje meta verilerini (model tanımları, eşlemeler, yapılandırma) depolar ancak gerçek üretim verileriyle ilgilenmez. Mock API'ler sentetik veya veri seti destekli veri sunar, asla gerçek müşteri bilgisi değil. Bu, Mockomat'ı geliştirme ortamları için doğası gereği güvenli kılar ve PII (kişisel tanımlanabilir bilgi) endişelerini ortadan kaldırır.
Mevcut bir şemayı içe aktarabilir miyim?
OpenAPI içe aktarımı, dışa aktarım (kod oluşturma) özelliği için bir girdi kaynağı olarak desteklenmektedir. Ek içe aktarım formatları (JSON Schema, code-first içe aktarımı) gelecek sürümler için planlanmıştır.
Teknik
Mockomat hangi teknoloji yığınını kullanıyor?
- Backend: NestJS, Apollo GraphQL (code-first), MongoDB, MariaDB, Redis
- Frontend: Angular 21, NgRx, Apollo Angular, Angular Material
- Kod Oluşturma: Jinja2 şablonlarıyla Python
- Altyapı: Docker, AWS, GCP veya herhangi bir Node.js barındırma ortamına dağıtılabilir
Oluşturulan backend neleri içerir?
Dışa aktarım özelliği, aşağıdakileri içeren eksiksiz bir NestJS projesi oluşturur:
- Controller'lar/resolver'lar, servisler, entity'ler ve DTO'lar ile domain modülleri (entity başına bir adet)
- Veritabanı yapılandırması (SQL için TypeORM veya MongoDB için Mongoose)
- İsteğe bağlı JWT kimlik doğrulama iskelesi
- class-validator dekoratörleriyle girdi doğrulama
- Kurulum talimatları içeren bir README
Tam ayrıntılar için Dışa Aktarım dokümantasyonuna bak.
Oluşturulan backend üretime hazır mı?
Oluşturulan kod derlenir, çalışır ve tasarladığın API'yi sunar. Yüksek kaliteli bir başlangıç noktasıdır — bitmiş bir ürün değil. Özel iş mantığı eklemen, harici servisleri entegre etmen, üretim altyapısını yapılandırman ve testler yazman gerekecektir. Bunu, takımının birinci günden itibaren iş değerine odaklanabilmesi için iskele aşamasını ortadan kaldırmak olarak düşün.
Oluşturulan kodu ticari olarak kullanabilir miyim?
Evet. Oluşturulan kod %100 sana aittir, hiçbir lisans kısıtlaması yoktur. Atıf veya ücret olmaksızın değiştirebilir, dağıtabilir, yeniden dağıtabilir ve ticarileştirebilirsin.
AWS, GCP, Azure veya on-premise'e dağıtabilir miyim?
Evet. Oluşturulan backend, Node.js'in çalıştığı her yerde çalışan standart bir NestJS uygulamasıdır. Mockomat'a özgü bir runtime veya SDK gerekmez.
Mockomat'ı kullanmak için NestJS bilgisine ihtiyacım var mı?
Modellemek, simüle etmek veya dışa aktarmak için hayır. NestJS bilgisi, oluşturulan backend'i özel iş mantığı ile genişletmek için gereklidir. Oluşturulan kod NestJS kurallarını izler, bu nedenle herhangi bir NestJS geliştiricisi hemen kavrayabilir.
Hangi GraphQL işlemleri destekleniyor?
Her entity şunları oluşturur:
- Liste sorgusu — isteğe bağlı filtre ve sıralama ile sayfalanmış koleksiyon
- Detay sorgusu — ID ile tek öğe
Mutation'lar (oluşturma, güncelleme, silme) mock runtime'ın değil, oluşturulan backend kodunun bir parçasıdır.
Planlar ve Fiyatlandırma
Fiyatlandırma nasıl çalışıyor?
Mockomat, cömert bir ücretsiz katman sunar ve ihtiyaçlarınla birlikte ölçeklenir:
- Quick (ücretsiz) — giriş yok, 1 geçici proje
- Free (ücretsiz) — hesap gerektirir, 5 proje, günlük 1.000 istek
- Business ($19/ay) — private endpoint'ler, API key'ler, aylık 50.000 istek
- Business Pro ($49/ay) — takımlar, analitikler, aylık 250.000 istek
- Enterprise (özel) — sınırsız, özel veri setleri, SLA'lar
Tam ayrıntılar için Hesap ve Planlar sayfasına bak.
Takımımla iş birliği yapabilir miyim?
- Free: İş birliği özelliği yok — projeler kişiseldir.
- Business: Kontrollü izinlerle proje paylaşımı için rol tabanlı erişim.
- Business Pro: Eş zamanlı oturum yönetimiyle çok kullanıcılı takımlar.
- Enterprise: Admin rolleri, yapılandırılabilir oturum limitleri ve denetim yetenekleriyle tam takım yönetimi.
İstek limitimi aşarsam ne olur?
API, Retry-After başlığıyla HTTP 429 (Too Many Requests) yanıtı döndürür. Free katmanı limitleri her gün gece yarısı UTC'de sıfırlanır. Ücretli katman limitleri faturalama tarihinde sıfırlanır. Eklenti olarak ek istek kapasitesi satın alabilirsin.
Blueprint'ler
Blueprint nedir?
Blueprint, yaygın bir domain kalıbını kapsayan önceden oluşturulmuş bir Mockomat proje şablonudur (örneğin E-Ticaret, CRM, Blog). Bir blueprint'i çalışma alanına klonlar ve kendi adların, attribute'ların ve ilişkilerinle özelleştirirsin. Yaygın yapıları sıfırdan oluşturmaktan kurtarır.
Kendi blueprint'lerimi oluşturabilir miyim?
Topluluk blueprint yayınlama planlanmış bir özelliktir. Şu anda tüm blueprint'ler Mockomat takımı tarafından seçilmektedir. Gelecekte, kayıtlı kullanıcılar kendi projelerini topluluk blueprint'leri olarak gönderebileceklerdir.
Sorun Giderme
Sorgum boş veri döndürüyor
Şu hususları kontrol et:
- İlgili koleksiyon için veri içe aktarımı tamamlanmış.
- Tüm attribute'ların veri eşlemeleri yapılandırılmış (OFF_FIELD, FAKE veya CONST).
- Filtre ifadelerin çok kısıtlayıcı değil.
İlişkiler boş diziler döndürüyor
Şu hususları kontrol et:
- İlişki yönü doğru (kaynak → hedef).
- Hedef entity mevcut ve eşlenmiş veriye sahip.
- Kardinalite sorgu beklentinle eşleşiyor (1:1 nesne döndürür, 1:n dizi döndürür).
Sıralama veya filtreleme etkisiz
Alanın tablo düzenleyicisinde sortable veya filterable olarak işaretlenip işaretlenmediğini kontrol et. Yalnızca bu bayrakları etkinleştirilmiş alanlar sıralama ve filtreleme işlemlerine katılır.
Neden bazı ekran görüntüleri eksik olarak işaretlenmiş?
Dokümantasyon, önce ekran görüntüsü ID'leri ve yer tutucularıyla oluşturulur. Bu, son yakalamalar hazırlanırken içerik üretiminin devam etmesini sağlar. Eksik ekran görüntüleri, hazır olduklarında gerçek yakalamalarla değiştirilecektir.
Gelecek Özellikler
Bir CLI aracı olacak mı?
Komut satırından giriş, kod oluşturma, yerel önizleme ve CI/CD entegrasyonunu destekleyecek bir CLI aracı planlanmaktadır.
Ek dışa aktarım hedefleri olacak mı?
NestJS birincil dışa aktarım hedefidir. Ek hedefler (Laravel, Prisma, TYPO3) talebe göre gelecek sürümler için planlanmıştır.
Gerçek zamanlı iş birliği olacak mı?
Gerçek zamanlı iş birlikçi düzenleme (birden fazla kullanıcının aynı modeli eş zamanlı olarak düzenlemesi) Enterprise planları için yol haritasındadır.


SSS sayfası görsel yer tutucusu.