Skip to main content

🧰 Mini Toolkit

A collection of 25 everyday utilities — image editing, document conversion, text tools and website checks — in one fast, clean Streamlit app. No sign-up, no clutter.

Tools

Category Tools
Image Background Remover · Image Converter · Image Enhancer · Image Watermarker · Image Color Picker · QR Code Generator · OCR Text Extractor
Documents Document Converter (DOCX ↔ PDF ↔ TXT) · PDF Merge & Split · File Compressor · Resume Builder · Email Signature
Text & Security Text Utilities · Text to Speech · Hash Generator · Password Checker & Generator
Web & Developer Website Status · Page Speed Checker · SSL Certificate Checker · SEO Health Check · Website Image Downloader · URL Shortener · Website Change Tracker · GitHub Trending · Chat Alert Bot (Slack / Teams / Discord)

Every tool has its own shareable URL, e.g. /?tool=qr-code.

Install from PyPI

pip install streamlit-mini-toolkit          # core tools
pip install "streamlit-mini-toolkit[all]"   # + background remover, OCR, DOCX/PDF conversion
mini-toolkit                                # opens the app at http://localhost:8501

Pick extras individually if you prefer: [bg] (Background Remover), [ocr] (OCR Text Extractor), [docs] (DOCX ↔ PDF). Streamlit flags pass through, e.g. mini-toolkit --server.port 8080.

Quick start (from source)

Requires Python 3.9+.

git clone https://github.com/sarif-mia/mini-toolkit.git
cd mini-toolkit
python -m venv .venv && source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt
streamlit run app.py

The app opens at http://localhost:8501.

System dependencies (optional)

A few tools call external programs. Everything else works without them.

Feature Needs
OCR Text Extractor Tesseract
DOCX → PDF LibreOffice (or Microsoft Word on Windows/macOS)

On Debian/Ubuntu: sudo xargs apt-get install -y < packages.txt

Deployment

  1. Go to share.streamlit.io and sign in with GitHub.
  2. Create app → pick this repository, branch master, main file app.py.
  3. Deploy. requirements.txt and packages.txt are picked up automatically.

Docker (Render, Railway, Fly.io, Hugging Face Spaces, …)

docker build -t mini-toolkit .
docker run -p 8501:8501 mini-toolkit

Why not Vercel? Vercel runs short-lived serverless functions, while Streamlit needs a long-running server with a persistent WebSocket connection. Use one of the options above instead.

Optional secrets

The Website Change Tracker can email change summaries. Add these to .streamlit/secrets.toml locally, or to your host's secrets settings:

smtp_server = "smtp.gmail.com"
smtp_port = 587
smtp_user = "you@example.com"
smtp_pass = "app-password"

Project structure

app.py               Entry point: page config, routing, home page
core/
  registry.py        List of tools and categories (add new tools here)
  ui.py              Shared UI helpers (headers, uploads, ZIP export, footer)
  net.py             Safe HTTP fetching for the web tools
tools/               One module per tool, each exposing render()
style/style.css      Custom styling
.streamlit/          Theme and server config

Adding a tool

  1. Create tools/my_tool.py with a render() function.
  2. Register it in core/registry.py:
    Tool("my-tool", "My Tool", "🧪", "One-line description.", TEXT, "my_tool"),
    

Tools are imported lazily, so a missing optional dependency only affects that one tool.

License

Distributed under the MIT License. See LICENSE.


Built by Sarif · GitHub · LinkedIn

Metadata

Release files for streamlit-mini-toolkit 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for streamlit-mini-toolkit 0.1.0
File Size Uploaded Provenance Actions
streamlit_mini_toolkit-0.1.0.tar.gz 34.7 kB Without provenance Details for streamlit_mini_toolkit-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for streamlit-mini-toolkit 0.1.0
File Interpreter ABI Platform Actions
streamlit_mini_toolkit-0.1.0-py3-none-any.whl Python 3 none any Details for streamlit_mini_toolkit-0.1.0-py3-none-any.whl

Total release size: 84.6 kB

Release files / streamlit_mini_toolkit-0.1.0.tar.gz

Download URL streamlit_mini_toolkit-0.1.0.tar.gz
Size 34.7 kB
Tags Source
SHA-256 checksum
How to use checksums
9946129b8a01876ebeaa5b5b009879bed531e8f077eab19d57c5bd9883914f33
BLAKE2b-256 checksum
How to use checksums
b813ef41d5faf802956f2d86c50d96ad1f5f33a2766195e5551b4bfa77202602
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / streamlit_mini_toolkit-0.1.0-py3-none-any.whl

Download URL streamlit_mini_toolkit-0.1.0-py3-none-any.whl
Size 49.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6eec483ab91f4291400a45f70c49516aa0aaccfcb5d4d4b9a473db34d540cfeb
BLAKE2b-256 checksum
How to use checksums
e835acade919895918111564fed694c2200abe19bd1282fdb03523b999141425
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for streamlit-mini-toolkit 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page