İçeriğe geç

Restorm nedir?

Restorm, bir API çevresinde yapılan her şeyi tek bir projede birleştiren bir masaüstü uygulamasıdır (Windows, macOS, Linux): API’yi çağırmak, simüle etmek, çağrıları zincirlemek, hepsini sürüm denetimine almak ve CI’da çalıştırmak.

API istemcilerinin çoğu HTTP ve GraphQL ile yetinirken Restorm on beş protokolü birinci sınıf vatandaş olarak ele alır; her biri için özel bir düzenleyici ve ona uygun bir yanıt görünümü sunar:

HTTP · GraphQL · gRPC · SOAP · WebSocket · Socket.IO · MQTT · SSE · STOMP · OData · JSON-RPC (tek tek ve toplu) · tRPC · Redis · AMQP / RabbitMQ · Kafka.

Somut olarak: aynı proje, bir siparişi oluşturan REST çağrısını, onayı alan MQTT aboneliğini ve olayın gerçekten yayınlandığını doğrulayan Kafka isteğini bir arada tutabilir. Bkz. protokol kataloğu.

Aynı klasörde GraphQL, WebSocket, SSE, Redis, Kafka, AMQP, STOMP, gRPC, SOAP, OData, tRPC, JSON-RPC, MQTT ve Socket.IO isteklerini HTTP işlem klasörlerinin yanında bir arada tutan proje kenar ağacı

Restorm bir servisi çağırmak yerine onu barındırmayı da bilir. Bir sunucu oluşturursunuz — bu, ağacın tam anlamıyla bir öğesidir ve Ekle ▸ HTTP sunucusu (ya da GraphQL, gRPC, SOAP, WebSocket, Socket.IO, MQTT, OData) yoluyla eklenir — ona bir rota ve bir yanıt verirsiniz, Restorm da localhost üzerinde dinler. Üçüncü taraf bir servis yok, ağ üzerinden gidiş geliş yok ve {{değişkenler}} tam servis anında çözümlenir.

Bkz. Sunucu modu.

Bir senaryo bir grafiktir: kutular (bir isteği çağırmak, bir koşulu sınamak, döngüye girmek, bir veriyi dönüştürmek, kod çalıştırmak) değerleri taşıyan bağlantılarla birbirine bağlanır. Diğer araçlardaki istek öncesi/sonrası betiklerin yerini alan şey budur ve okunabilir kalır.

Basit bir If’ten JSON şeması doğrulamasına, oradan Kafka bağlantısına kadar doksan kutu türü mevcuttur. Bkz. Senaryolar.

Bir HTTP istek düğümü, durum kodu üzerinde bir doğrulama, bir çıkarma ve bir If düğümü içeren senaryo

Yerel, dosya tabanlı, sürüm denetimine uygun

Section titled “Yerel, dosya tabanlı, sürüm denetimine uygun”

Bir Restorm projesi, diskinizde bir .restorm dosyası (varsayılan olarak YAML) ya da bir klasör ağacıdır. Bizde hiçbir şey saklanmaz. Serileştirme belirlenimlidir — kurallı anahtar sırası, kararlı biçimde türetilen tanımlayıcılar — böylece değişiklik yapılmadan yapılan bir kayıt hiçbir diff üretmez ve bir API projesi üzerindeki kod incelemesi işe yarar hâle gelir.

Restorm ayrıca bu biçimi anlayan bir git istemcisi barındırır: varlık başına üretilen bir commit mesajı ve iki sürümü kendi gerçek düzenleyicilerinde gösteren bir çakışma çözümü.

İki otomasyon yüzeyi:

  • komut satırı: restorm --open projet.restorm --run "Tests de fumée" --headless bir senaryoyu penceresiz çalıştırır, günlüğü standart çıktıya yazar ve CI’da kullanılabilir bir çıkış kodu döndürür. Bkz. Headless çalıştırma ve CI;
  • yerleşik MCP sunucusu: bir yapay zekâ ajanı (Claude Code, Cursor…) proje ağacını okuyabilir, istek oluşturabilir, bunları çalıştırabilir ve arayüzü yönetebilir. Bkz. Restorm’u MCP ile yönetme.

Restorm bir uygulama güvenlik duvarı barındırır: projenizde bulunan bir URL’den gelmeyen her giden çağrı varsayılan olarak engellenir ve ona izin vermeniz istenir. Eve telefon eden bir bağımlılık, bunu siz bilmeden yapamaz. Bkz. Güvenlik duvarı.

Restorm, istek ya da proje sınırı olmaksızın ücretsiz kullanılabilir ve tüm çalıştırma protokolleri Community sürümüne dâhildir. Pro ve Enterprise sürümleri yetenekler açar (CI’da headless çalıştırma, yerleşik git, ileri düzey MCP araçları, SSO…) — asla kota değil. Bkz. Planlar ve yetenekler.