Przejdź do głównej zawartości

Czym jest Restorm?

Restorm to aplikacja desktopowa (Windows, macOS, Linux), która skupia w jednym projekcie wszystko, co robi się wokół API: wywoływanie go, symulowanie, łączenie wywołań w łańcuchy, wersjonowanie całości i uruchamianie w CI.

Tam, gdzie większość klientów API zatrzymuje się na HTTP i GraphQL, Restorm traktuje piętnaście protokołów jako pełnoprawnych obywateli — każdy ma własny edytor i dopasowany widok odpowiedzi:

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

W praktyce: ten sam projekt może zawierać wywołanie REST tworzące zamówienie, subskrypcję MQTT odbierającą potwierdzenie oraz żądanie Kafka sprawdzające, czy zdarzenie faktycznie zostało opublikowane. Zob. katalog protokołów.

Drzewo projektu w panelu bocznym, w którym w jednym folderze mieszają się żądania GraphQL, WebSocket, SSE, Redis, Kafka, AMQP, STOMP, gRPC, SOAP, OData, tRPC, JSON-RPC, MQTT i Socket.IO, obok folderów z operacjami HTTP

Restorm potrafi także hostować usługę, zamiast ją wywoływać. Wystarczy utworzyć serwer — jest to pełnoprawny element drzewa, dodawany przez Dodaj ▸ Serwer HTTP (albo GraphQL, gRPC, SOAP, WebSocket, Socket.IO, MQTT, OData) — nadać mu trasę i odpowiedź, a Restorm zaczyna nasłuchiwać na localhost. Bez usług zewnętrznych, bez podróży przez sieć, a {{variables}} są rozwiązywane w chwili obsługi żądania.

Zob. Tryb serwera.

Scenariusz jest grafem: bloki (wywołanie żądania, sprawdzenie warunku, pętla, przekształcenie danych, wykonanie kodu) połączone krawędziami, które przenoszą wartości. To właśnie zastępuje skrypty pre/post-request z innych narzędzi, pozostając przy tym czytelnym.

Dostępnych jest dziewięćdziesiąt typów bloków — od prostego If, przez walidację schematu JSON, aż po połączenie Kafka. Zob. Scenariusze.

Scenariusz z węzłem żądania HTTP, asercją na kodzie statusu, ekstrakcją i węzłem If

Projekt Restorm to plik .restorm (domyślnie YAML) albo drzewo folderów na własnym dysku. Nic nie jest przechowywane po naszej stronie. Serializacja jest deterministyczna — kanoniczna kolejność kluczy, stabilnie wyprowadzane identyfikatory — aby zapis bez żadnej modyfikacji nie generował żadnego diffa, a przegląd kodu projektu API był użyteczny.

Restorm zawiera ponadto klienta git, który rozumie ten format: komunikat commita generowany dla każdej encji oraz rozwiązywanie konfliktów, które pokazuje obie wersje w ich prawdziwym edytorze.

Dwie powierzchnie automatyzacji:

  • wiersz poleceń: restorm --open projet.restorm --run "Tests de fumée" --headless uruchamia scenariusz bez okna, zapisuje dziennik na standardowe wyjście i zwraca kod wyjścia użyteczny w CI. Zob. Uruchamianie headless i CI;
  • wbudowany serwer MCP: agent AI (Claude Code, Cursor…) może odczytać drzewo projektu, tworzyć żądania, uruchamiać je i sterować interfejsem. Zob. Sterowanie Restorm przez MCP.

Restorm ma wbudowaną zaporę aplikacyjną: każde wychodzące wywołanie, które nie pochodzi z adresu URL obecnego w projekcie, jest domyślnie blokowane, a użytkownik zostaje poproszony o jego zatwierdzenie. Zależność, która próbowałaby „dzwonić do domu”, nie zrobi tego niezauważona. Zob. Zapora.

Z aplikacji Restorm można korzystać bezpłatnie, bez limitu żądań ani projektów, a wszystkie protokoły wykonawcze są zawarte w edycji Community. Edycje Pro i Enterprise odblokowują możliwości (uruchamianie headless w CI, wbudowany git, zaawansowane narzędzia MCP, SSO…) — nigdy limity ilościowe. Zob. Plany i możliwości.