• Stars
    star
    1,926
  • Rank 24,063 (Top 0.5 %)
  • Language Vue
  • License
    MIT License
  • Created about 3 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Offline-First Minimalistic HTTP & Socket Testing Client for the Web & Desktop

Restfox

Restfox

Website | Install | Releases/Downloads | Screenshots | Compiling | Compiling Web Standalone

Offline-first web HTTP client

Installation

MacOS

Package available in homebrew by using: brew install restfox

Ubuntu and other distributions supporting snap

Package available through snap can be installed using: sudo snap install restfox

RPM, DEB and NuPKG

There are precompiled binaries in the releases page.

Windows

There are precompiled binaries in the releases page.

Docker

docker run --name Restfox -d -p 4004:4004 flawiddsouza/restfox:0.0.8

Screenshots

Response History

Context Menu

Environment Variables

Plugins

Compiling

ui

Development

npm run dev

Distribution

npm run build

Desktop distribution and development

npm run build-desktop

Web Standalone distribution and development

npm run build-web-standalone

electron

To upgrade electron to latest version

npm install --save-dev electron@latest @electron-forge/cli@latest @electron-forge/maker-deb@latest @electron-forge/maker-rpm@latest @electron-forge/maker-squirrel@latest @electron-forge/maker-zip@latest

Development

npm run start

Distribution

npm run make

or

npm run publish

tauri(optional)

fetch polyfill for tauri

After ui is built, go to the ui/assets/index.[hash].js file and add this code at the top of the file:

export async function fetch(input, init) {
    const fetch = window.__TAURI__.http.fetch

    const params = {
        ...init,
        body: {
            type: 'Text',
            payload: init.body
        }
    };

    if(params.body.payload instanceof URLSearchParams) {
        params.body.payload = params.body.payload.toString()
    }

    if(init.method === 'GET' || 'body' in init === false || init.body === null) {
        delete params.body
    }

    const res = await fetch(input.toString(), params)

    return new Response(JSON.stringify(res.data), res)
}

Development

npm run dev

Distribution

npm run build

Using web-standalone

git clone https://github.com/flawiddsouza/Restfox
cd packages/ui
npm i
npm run build-web-standalone
cd ../web-standalone
npm i
npm start

By default npm start will run Restfox at port 4004. You can override the port by passing port like so PORT=5040 npm start.

Built and used by Docker

First refer to Compiling Web Standalone to build successfully locally and use it normally. Then in the project root directory (directory with Dockerfile), execute:

docker build -t restfox:xx .

Note: xx is the version number

After the build is complete, use the following command to start the service:

docker run -d -p:4004:4004 restfox:xx

Visit after successful startup: localhost:4004

Alternatively, you can also use the pre-built Docker image available on Docker Hub. See: Docker.

More Repositories

1

shortcommand

Easily run a set of commands quickly using a global yaml configuration file
Go
15
star
2

code-mirror-custom-element

CodeMirror 6 as a custom element (web component)
JavaScript
2
star
3

Web-Video-Playlists

A web app to manage your favorite online videos in playlists. Supported sites are YouTube, Facebook and Vimeo.
JavaScript
2
star
4

Journals

Hierarchical Note-taking web application
Svelte
1
star
5

quick-admin-panel-laravel

PHP
1
star
6

web-notifications-test

JavaScript
1
star
7

youtube-playlist-viewer

A little web app to view your YouTube playlists quickly
HTML
1
star
8

watchy

A more generic lightweight alternative to nodemon (unstable)
JavaScript
1
star
9

favorite-folders

VS Code Extension
TypeScript
1
star
10

Art-You-Like

A Web App for Storing Your Favorite Artworks
Python
1
star
11

Remember-Cursor-Position

Notepad++ Plugin to remember the last known cursor position of all previously opened files
C++
1
star
12

snippy

Code Snippet Manager
Vue
1
star
13

chrome-bookmarks-html-to-json

Convert the exported html chrome bookmarks file to json from your cli or through the npm package
JavaScript
1
star
14

quick-note

Offline first tiny note taking app with cross device sync
Vue
1
star
15

mysql-db-diff

Compare two MySQL databases for data differences
JavaScript
1
star
16

Writer

An android app for taking notes quicky
Java
1
star
17

projects

Project Task Management Tool
JavaScript
1
star
18

LinkBox

Web based OneTab replacement
JavaScript
1
star
19

text-tools

JavaScript
1
star
20

insomnia-importers-browser

JavaScript
1
star
21

Shared-Notepad

A notepad that remembers your notes and allows multiple users to modify it in sync, thanks to WebSockets.
JavaScript
1
star
22

quick-admin-panel-vue

CSS
1
star
23

websocket-client

A WebSocket client to test your WebSockets
Vue
1
star
24

monefy-export-data-extractor

Use this to get the SQLite3 database in the exported Monefy backup
JavaScript
1
star
25

Story-Outliner

An app to outline your stories from the biggest details to the smallest
JavaScript
1
star
26

Treble

Self-hosted music player
CSS
1
star
27

express-postgres-auth-starter

A starter template for making an api with express + postgres + database migrations + jwt auth
JavaScript
1
star
28

File-Tray

A simple web app that allows you to upload and download files from the same page.
JavaScript
1
star
29

Bookmarker

JavaScript
1
star
30

restfox-plugin-aes-crypto-handler

JavaScript
1
star
31

quick-nodejs-prototypes

JavaScript
1
star
32

jira-helper

JavaScript
1
star
33

express-clone

A very rough lightweight drop-in replacement for express. Limited feature set.
JavaScript
1
star
34

Mackerel-Download-Manager

A free and open source alternative to IDM
C#
1
star
35

jellyadmin

Database viewer & query runner (for PostgreSQL and MySQL)
Vue
1
star