Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docs/compare/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ Where another tool is a better fit, these pages say so.
and test-code export, instead of stitching several tools together.
- **Broad protocol coverage.** REST/HTTP, GraphQL, SOAP, WebSocket, and gRPC
(unary and server streaming) in one client.
- **Rich request authoring.** An introspection-driven GraphQL query builder, a
SOAP WSDL loader that generates the envelope for you, and secret-manager
integrations (Vault, AWS, Azure, 1Password) built in - not left to plugins.
- **Export to real test code.** Robot Framework, Playwright, Karate, REST Assured,
and supertest, so tests run in your existing stack, not locked in a proprietary
runner.
Expand Down
5 changes: 4 additions & 1 deletion docs/compare/bruno.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@ narrow: it is a very good request client.
| Local-first / offline | Yes | Yes |
| Account required | No | No |
| Storage | Files (Git-friendly) | Files, `.bru` markup (Git-friendly) |
| Secrets | AES-256-GCM local + Vault/AWS/Azure/1Password | Env files, `.env`, secret vars |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Env files, `.env`, secret vars |
| GraphQL query builder | Yes, introspection-driven | Yes |
| SOAP + WSDL loader | Yes, load a WSDL and generate the envelope | No |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Not a focus |
| Mock servers | Yes (local and cloud) | No |
| Contract testing | Built in, Pact-compatible | No |
Expand All @@ -32,6 +34,7 @@ narrow: it is a very good request client.

Bruno and API Spector agree on the fundamentals, so the choice is about scope.

- **Author faster.** An introspection-driven GraphQL query builder, a SOAP WSDL loader that fills in the envelope, and Vault / AWS / Azure / 1Password secret references, all built in - no plugins.
- **More of the workflow in one place.** If you also need mock servers, contract
testing, or to generate runnable tests, API Spector covers those without adding
another tool.
Expand Down
5 changes: 4 additions & 1 deletion docs/compare/insomnia.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ features, which prompted some users to look for offline-first alternatives.
|---|---|---|
| Local-first / offline | Yes | Supported, but account and cloud are emphasised |
| Account required | No | Prompted; some features gated |
| Secrets | AES-256-GCM local + external managers | Environment variables, plugins |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Environment variables, plugins |
| GraphQL query builder | Yes, introspection-driven | Yes |
| SOAP + WSDL loader | Yes, load a WSDL and generate the envelope | No |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Snippets; Inso CLI for its own runner |
| Contract testing | Built in, Pact-compatible | Not built in |
| OpenAPI test coverage | Yes, with a CI gate | No |
Expand All @@ -27,6 +29,7 @@ features, which prompted some users to look for offline-first alternatives.

## Where API Spector fits

- **Author faster.** An introspection-driven GraphQL query builder, a SOAP WSDL loader that fills in the envelope, and Vault / AWS / Azure / 1Password secret references, all built in - no plugins.
- **No account, no nudging.** The app is fully usable offline with nothing to sign
in to.
- **From request to test code.** Export a collection to Robot Framework,
Expand Down
6 changes: 3 additions & 3 deletions docs/compare/kreya.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ freemium model and appeals to teams whose APIs are largely gRPC.
|---|---|---|
| gRPC | Yes (unary + server streaming) | Yes, deeper (client/bidi streaming, reflection) |
| HTTP/REST | Yes | Yes |
| GraphQL | Yes | Limited |
| SOAP / WebSocket | Yes | Partial |
| GraphQL query builder | Yes, introspection-driven | Limited |
| SOAP + WSDL loader | Yes, WSDL-driven | Partial |
| Local-first / offline | Yes | Yes |
| Secrets | AES-256-GCM local + external managers | Environment variables |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Environment variables |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Not a focus |
| Mock servers | Yes | No |
| Contract testing | Built in, Pact-compatible | No |
Expand Down
4 changes: 3 additions & 1 deletion docs/compare/milkman.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@ It is community-driven, and capabilities depend on which plugins you add.
| Account required | No | No |
| Storage | Files (Git-friendly) | Files (Git-friendly) |
| Out-of-the-box features | Client, mocks, contracts, code export | Core client; rest via plugins |
| Secrets | AES-256-GCM local + Vault/AWS/Azure/1Password | Plugin-dependent |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Plugin-dependent |
| GraphQL query builder | Yes, introspection-driven | Plugin-dependent |
| SOAP + WSDL loader | Yes, load a WSDL and generate the envelope | Plugin-dependent |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Plugin-dependent |
| Mock servers | Yes | Plugin-dependent |
| Contract testing | Built in, Pact-compatible | No |
Expand Down
5 changes: 4 additions & 1 deletion docs/compare/postman.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ tiers.
| Runs fully offline | Yes | Limited; account and sync are central |
| Account required | No | Effectively yes for most workflows |
| Where data lives | Your machine (files) | Postman cloud by default |
| Secrets | AES-256-GCM local + Vault/AWS/Azure/1Password references | Vault/env; cloud-synced vault |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Vault/env; cloud-synced vault |
| GraphQL query builder | Yes, introspection-driven | Yes |
| SOAP + WSDL loader | Yes, load a WSDL and generate the envelope | Manual, no WSDL import |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Snippets; runs in Postman's runner/Newman |
| Contract testing | Built in, Pact-compatible | Via external tooling |
| OpenAPI test coverage | Yes, with a CI gate | Partial (cloud platform inventory) |
Expand All @@ -31,6 +33,7 @@ tiers.

## Where API Spector fits

- **Author faster.** An introspection-driven GraphQL query builder, a SOAP WSDL loader that fills in the envelope, and Vault / AWS / Azure / 1Password secret references, all built in - no plugins.
- **Your data stays local.** No forced sign-in, no collections living in someone
else's cloud. Good for regulated environments and anyone uneasy about API keys
syncing off-machine.
Expand Down
3 changes: 2 additions & 1 deletion docs/compare/readyapi.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,11 @@ teams and is licensed commercially.
| Service virtualization | Mock servers | Yes (ServiceV) |
| Contract testing | Built in, Pact-compatible | Not a focus |
| SOAP / REST | Yes | Yes |
| GraphQL query builder | Yes, introspection-driven | Limited |
| gRPC | Yes (unary + server streaming) | No |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Its own runner + CI tooling |
| Local-first / offline | Yes | Desktop; enterprise/cloud features |
| Secrets | AES-256-GCM local + external managers | Project properties / vault |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Project properties / vault |

## Where API Spector fits

Expand Down
4 changes: 2 additions & 2 deletions docs/compare/soapui.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ builds on it with a modern UI and more features.
|---|---|---|
| SOAP / WSDL | Yes (WSDL-driven editor) | Yes, a core strength |
| REST / HTTP | Yes | Yes |
| GraphQL / WebSocket | Yes | Limited |
| GraphQL query builder | Yes, introspection-driven | Limited |
| gRPC | Yes (unary + server streaming) | No |
| Functional testing | Yes | Yes |
| Load testing | No | Yes |
Expand All @@ -31,7 +31,7 @@ builds on it with a modern UI and more features.
| Mock servers | Yes | Yes (SOAP/REST mocks) |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Groovy scripts |
| Footprint / UI | Lightweight, modern | Heavier, Java desktop |
| Secrets | AES-256-GCM local + external managers | Properties / project files |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Properties / project files |

## Where API Spector fits

Expand Down
5 changes: 4 additions & 1 deletion docs/compare/yaak.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,9 @@ is a sleek, focused client that has grown quickly.
| Local-first / offline | Yes | Yes |
| Account required | No | No |
| Storage | Files (Git-friendly) | Local, with Git sync |
| Secrets | AES-256-GCM local + Vault/AWS/Azure/1Password | Environment variables |
| Secret managers | Vault, AWS, Azure, 1Password (+ AES-256-GCM local) | Environment variables |
| GraphQL query builder | Yes, introspection-driven | Yes |
| SOAP + WSDL loader | Yes, load a WSDL and generate the envelope | No |
| Export to test code | Robot Framework, Playwright, Karate, REST Assured, supertest | Not a focus |
| Mock servers | Yes (local and cloud) | No |
| Contract testing | Built in, Pact-compatible | No |
Expand All @@ -27,6 +29,7 @@ is a sleek, focused client that has grown quickly.

## Where API Spector fits

- **Author faster.** An introspection-driven GraphQL query builder, a SOAP WSDL loader that fills in the envelope, and Vault / AWS / Azure / 1Password secret references, all built in - no plugins.
- **Beyond the request client.** If your work extends to mocking, contract
testing, or generating runnable tests, API Spector includes those.
- **Standard test output.** Export to Robot Framework, Playwright, Karate, REST
Expand Down
6 changes: 3 additions & 3 deletions src/renderer/src/components/RequestBuilder/ContractTab.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,10 @@ export function ContractTab({ request, onChange }: Props) {

return (
<div className="flex flex-col gap-4 h-full min-h-0">
{/* What this tab is and how it differs from Schema. */}
{/* What this tab is, and how it differs from Schema. */}
<div className="rounded-lg border border-blue-700/50 bg-blue-950/30 px-3 py-2 text-[11px] leading-relaxed text-blue-200/90">
<span className="font-semibold text-blue-300">Contract — the published expectation.</span>{' '}
What this request <em>needs</em> from the provider: status, body shape, headers. It becomes the <strong>consumer pact</strong> used for contract testing (bi-directional verify &amp; <span className="font-mono">can-i-deploy</span>). For a throwaway local response check, use the <strong>Schema</strong> tab.
<span className="font-semibold text-blue-300">Contract.</span>{' '}
What this request <em>expects</em> from the provider: status, headers, and body shape (a JSON Schema). It is checked against the response in the <strong>Contract</strong> panel and is the consumer side of contract testing (consumer &amp; bi-directional verify), feeding the <span className="font-mono">deploy-check</span> gate. For a quick body check that runs on every send, use the <strong>Schema</strong> tab.
</div>

{/* Status indicator */}
Expand Down
Loading