Swastik Codes: one API client for every protocol.
Design, test, mock, monitor and document REST, GraphQL, gRPC, WebSocket and MQTT APIs in one workspace, right in your browser. Bring your Postman collections; scripts written for pm.* run unchanged.
$ swc init
# log in, pick a workspace, scan routes, upload
$ swc bridge
# web app can now reach localhost:8000
$ swc diff
# API changes since main; fails on breaking ones
$ swc run shop-api --affected-since origin/main
✓ Newman-compatible flags, ready for CI
One client, eight protocols
Most teams juggle a REST client, a gRPC tool, a WebSocket tester and an MQTT app. Swastik Codes keeps them in one collection, with one set of environments and variables.
HTTP / REST
RequestEvery method, body type and auth scheme, with environments, variables and code snippets for each request.
GraphQL
QueryPoint it at an endpoint and write queries, mutations and variables against the schema.
gRPC
RPCCall gRPC services alongside your REST endpoints, in the same collection and the same environments.
WebSocket
StreamOpen a connection, send messages and watch the replies arrive, without writing a throwaway client.
Socket.IO
StreamEmit and listen to Socket.IO events directly, so real-time features can be tested like any other endpoint.
Server-Sent Events
StreamSubscribe to an SSE endpoint and read the event stream as the server pushes it.
MQTT
IoTPublish and subscribe to topics on an MQTT broker, so IoT devices and backends can be tested from the same workspace.
MCP
AITest Model Context Protocol servers, and serve your own collection to AI coding assistants with swc mcp.
From the first request to production checks
One collection holds the request you are debugging, the tests that guard it, a mock for the frontend team and a monitor that alerts you when it breaks.
API tests
Pre-request and test scripts, assertions and JSON Schema checks, written once and run on every send.
Collection runner
Run a folder or a whole collection with iterations, data files and delays, then export the report.
Load tests
Simulate virtual users under several traffic profiles and watch latency percentiles live.
Mock servers
Serve saved example responses from a public URL, with request matching, delays and templates.
Monitors
Scheduled runs with retries, and alerts by email or signed webhook when a check fails.
API design
Multi-file OpenAPI and AsyncAPI specs with linting, versioning and sync to your collections.
Published docs
Publish a collection as public documentation, with secrets stripped out before it goes live.
Flows
Chain requests visually, with conditions, loops, delays and webhook triggers.
Know what changed, what is flaky and what is exposed
Passing tests only tell you about the cases someone wrote. These checks look for the cases nobody did.
Staging vs production
Compare two environments' responses field by field, ignoring IDs, timestamps and anything else you choose.
Flaky tests and coverage gaps
Repeat runs to find unstable tests, and list the requests and error codes no test covers.
Security checks
Probe for unauthenticated endpoints, permissive CORS and leaky errors, with optional invalid-input fuzzing.
An access matrix for every role
Send one request as admin, user or guest, with automatic sign-in, and flag any role that gets in where it should not.
Breaking changes stopped in review
The swc diff command reads the API from your code, compares it with the main branch and fails CI on a breaking change.
Docs that tell you when they are wrong
Responses are checked against saved examples, and missing, new or changed fields are flagged.
Lighter on memory, quicker to start
The desktop app runs requests in a native Rust engine instead of shipping its own copy of Chromium.
| App | Memory after 60 s | Window visible | Windows installer |
|---|---|---|---|
| Swastik Codes 0.1.0 | 434 MB | 0.4 s | 11 MB |
| Postman 12.33.4 | 585 MB | 1.1 s | 204 MB |
| Bruno 4.3.0 | 615 MB | 4.6 s | 117 MB |
| Insomnia 13.3.1 | 656 MB | 2.9 s | 500 MB |
| Hoppscotch 26.9.0 | 800 MB | 1.3 s | 45 MB |
Bring your collections and your tests
Switching should not mean rewriting. Import what you have and keep working the same afternoon.
Collections, environments, globals
Import from Postman, Insomnia, OpenAPI 3, Swagger 2, cURL, HAR, RAML or WSDL, including a full Postman data dump.
Your scripts, unchanged
Test and pre-request scripts written against Postman's pm.* API run in the sandbox. swc.* is the native equivalent.
Replace Newman in CI
swc run takes Newman-compatible flags, so moving a pipeline off Newman is a small edit. Export back to Postman any time.
The swc tool, for your terminal and your pipeline
$ curl -fsSL -o swc \
https://swastik.codes/download/files/swc-linux-x86_64
$ chmod +x swc && sudo mv swc /usr/local/bin/
$ swc version
swc bridge runs the web app's requests on your machine, so it reaches localhost and private networks with no extension and no open port.swc scan finds the API routes in your code; swc sync re-scans and keeps your edits.swc workspace pull and push store a workspace as JSON files you can review in a pull request.| Platform | Details |
|---|---|
| Web app | Any modern browser at swastik.codes/app; free account (GitHub or email) |
| Windows | Windows 10 or 11, x64; per-user installer, no admin rights |
| Linux | .deb, .rpm or AppImage; Ubuntu 22.04+, Debian 12+, Fedora 38+ |
| macOS | Coming; use the web app in the meantime |
swc CLI | Linux and Windows x64; works without an account |
| Mobile | No app; the web app works in mobile browsers |
Review API changes like you review code
Shared workspaces
Personal, team and public workspaces, with admin, editor and viewer roles and sync across devices.
Forks and pull requests
Version history, forks, approval reviews and merge checks, so a collection change is reviewed before it lands.
Comments
Threaded comments with mentions on requests, plus HMAC-signed workspace webhooks.
One API catalog
A searchable directory of the team's APIs with owners, status, docs and monitors in one place.
Sensible defaults for real credentials
An API client holds the keys to every system you test. It should behave like it.
Questions, bugs or a protocol we missed?
Swastik Codes is built and run by the Shwastik engineering team in Darbhanga. Tell us what you are testing and we will help you set it up.
Visit the Swastik Codes site