https://github.com/dharshan-kumarj/pingstream
Pingstream is a lightweight, Streamlit-based API testing tool using curl under the hood. Designed for low-RAM systems, it supports GET, POST, PUT, DELETE with JSON, headers, file uploads, and Postman/OpenAPI import.
https://github.com/dharshan-kumarj/pingstream
api-testing-tool curl developer-tools json lightweight linux-tools low-memory openapi postman-alternative productivity python python3 rest-api streamlit
Last synced: about 1 month ago
JSON representation
Pingstream is a lightweight, Streamlit-based API testing tool using curl under the hood. Designed for low-RAM systems, it supports GET, POST, PUT, DELETE with JSON, headers, file uploads, and Postman/OpenAPI import.
- Host: GitHub
- URL: https://github.com/dharshan-kumarj/pingstream
- Owner: dharshan-kumarj
- Created: 2025-04-13T08:41:23.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-06-03T14:01:55.000Z (8 months ago)
- Last Synced: 2025-06-04T00:01:06.284Z (8 months ago)
- Topics: api-testing-tool, curl, developer-tools, json, lightweight, linux-tools, low-memory, openapi, postman-alternative, productivity, python, python3, rest-api, streamlit
- Language: Python
- Homepage:
- Size: 29.3 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ Pingstream โ The Lightweight API Tester
**Pingstream** is a minimalist, memory-efficient GUI tool for testing REST APIs. Built using Python, Streamlit, and `curl`, itโs perfect for developers working in low-resource environments (like 4GB RAM machines) where heavy tools like Postman just don't cut it.
---
## ๐ง Features
* โก **Lightweight** โ Ideal for systems with limited RAM
* ๐ **Core HTTP Methods** โ GET, POST, PUT, DELETE
* ๐งฑ **Request Builder** โ Build complete API calls with ease
* ๐งฉ **Header Manager** โ Add, edit, and remove custom headers
* ๐งฎ **Query Parameter Support** โ Clean interface for managing query params
* ๐ฆ **JSON Body Editor** โ Includes automatic JSON validation
* ๐ **File Upload** โ Send files with your API requests
* ๐ **Request History** โ View your recent API calls
* ๐ **Curl-based Engine** โ Reliable, fast request handling
* ๐ค **Import/Export** โ Supports Postman collections and OpenAPI JSON files
---
## ๐ฅ Installation
### โ
Prerequisites
* Python 3.7+
* `pip`
* `curl` (should be installed and accessible in your system PATH)
### ๐ Setup
```bash
# Clone or download this repo
git clone https://github.com/yourusername/pingstream.git
cd pingstream
# Install dependencies
pip install streamlit
# Run the app
streamlit run pingstream.py
```
---
## ๐ Usage Guide
### ๐น Make a Request
1. Select HTTP method (GET, POST, etc.)
2. Enter the API URL
3. Click "Send Request"
### ๐น Manage Headers
* Go to the "Headers" tab
* Add key-value pairs
* Click "Add Header" as needed
### ๐น Add Query Params
* Go to the "Params" tab
* Add key-value pairs
* Click "Add Parameter"
### ๐น Send JSON Body
* Go to the "Body" tab
* Choose โraw JSONโ
* Paste your JSON (automatic validation included)
### ๐น Upload Files
* Go to the "Files" tab
* Use the uploader to include your file in the request
### ๐น Import/Export
* Import API definitions from Postman or OpenAPI JSON
* Export your requests for reuse or sharing
---
## ๐งฐ Troubleshooting
### โ ScriptRunContext Warnings
If you see warnings like `missing ScriptRunContext`, you can suppress them with:
```bash
streamlit run pingstream.py --logger.level=error
```
Or create a config file:
```toml
# .streamlit/config.toml
[logger]
level = "error"
```
### โ Request Errors
* Confirm `curl` is installed: `curl --version`
* Check your internet and API endpoint
* Validate your JSON structure
---
## ๐งพ Requirements
* Python 3.7+
* Streamlit
* curl
---
## ๐จโ๐ป Created By
**Pingstream** was developed by [@dharshan-kumarj](https://github.com/dharshan-kumarj) on April 13, 2025, with love for developers using low-end machines.
**UI Enhancements by** [@ronnie-allen](https://github.com/ronnie-allen) โ improving the design and experience of the Streamlit interface.
> ๐ก Built on Linux, powered by `curl`, and designed to work even when your RAM says โnoโ.
---