Skip to content

Repository files navigation

FrolikFox

Lightweight API testing client built with Tauri + Svelte.

MVP Features

  • Collections + requests (GET/POST, headers, query params, body)
  • Environment variables + secrets
  • Response viewer (status, headers, body, timing)
  • Postman collection v2.1 import/export
  • Simple scripting (pre-request + tests)

Getting Started

npm install
npm run dev

In a second terminal:

npx tauri dev

Storage Format (FrolikFox)

Collections are stored on disk using a Bruno-inspired layout with .ffx files.

<collection>/
  frolikfox.json
  environments/
    dev.ffx
  requests/
    users/
      Get Users.ffx

Collection metadata

frolikfox.json

{
  "version": "1",
  "id": "<uuid>",
  "name": "MyCollection",
  "type": "frolikfox"
}

Request file (.ffx)

meta {
  id: <uuid>
  name: Get Users
  type: http
  seq: 1
}

request {
  method: GET
  url: https://api.example.com/users
}

headers {
  Authorization: Bearer {{token}}
}

query {
  limit: 50
}

body:json {
  {
    "active": true
  }
}

script:pre {
  pm.environment.set("token", "abc");
}

script:test {
  pm.test("status is 200", () => {
    if (pm.response.status !== 200) throw new Error("Bad status");
  });
}

Environment file (.ffx)

meta {
  id: <uuid>
  name: dev
}

vars {
  baseUrl: https://api.example.com
  token: ***
}

Secrets are masked as *** in .ffx files and stored separately in the app data directory.

Scripting

Use pm in pre-request and test scripts:

pm.environment.set('token', 'abc');

pm.test('status is 200', () => {
  if (pm.response.status !== 200) throw new Error('Bad status');
});

Postman Import/Export

  • Import: use the Import button to load a Postman v2.1 collection JSON file.
  • Export: use Export to save the active collection as Postman v2.1 JSON.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages