Skip to main content

Zealpy 🚀

License: GPL-3.0 Python Version PyPI Zero Dependencies

Zealpy is a lightweight, zero-dependency offline documentation browser and CLI for Dash and Zeal docsets.

Written in pure standard library Python, it runs anywhere without compiling C++ code, launches in milliseconds, and provides both a lightning-fast terminal CLI and a modern Dark Mode Web UI.


✨ Features

  • ⚡ Zero External Dependencies: Runs entirely on Python's standard library (sqlite3, http.server, urllib, tarfile, plistlib). No heavy frameworks or compiler issues.
  • 🔍 Instant Terminal Search: Query functions, methods, and classes right from your shell with colorized output.
  • 🎨 Modern Dark Mode Web UI: Built-in responsive SPA interface with live search autocomplete, type filter pills, and embedded HTML documentation reader.
  • 📦 Official Docset Downloader: Download and unpack documentation sets for Python, Qt, PyQt, Pandas, NumPy, Flask, Django, PostgreSQL, and 20+ other popular stacks directly from official mirrors.
  • 🔄 Auto-detection of Existing Zeal Docsets: Automatically discovers docsets already installed by desktop Zeal (%LOCALAPPDATA%/Zeal/Zeal/docsets on Windows, ~/.local/share/Zeal/Zeal/docsets on Linux).
  • 🛡️ Clean & Exam Safe: Perfect for offline environments, coding competitions, and exams where external GUI binaries might raise questions, but Python packages are fully permitted.

🚀 Quick Start

Installation

pip install zealpy

Or install locally in editable mode:

git clone https://github.com/RuttiTuttii/zealpy.git
cd zealpy
pip install -e .

💻 CLI Usage

1. Launch Documentation Server & Browser

zealpy serve

Starts the local documentation server at http://127.0.0.1:8080 and opens your browser.

Custom port or no browser popup:

zealpy serve --port 9090 --no-browser

2. Search Symbols Directly in Terminal

# Search across all installed docsets
zealpy search QComboBox

# Filter by docset
zealpy search groupby -d Pandas

# Filter by symbol type (Class, Method, Function, Module)
zealpy search connect -t Method

3. List Installed Docsets

zealpy list

4. Download Official Docsets

Check available docsets:

zealpy available

Download and install:

zealpy download Python
zealpy download Qt
zealpy download Pandas
zealpy download Flask

5. Import Local Docset Archive

zealpy add path/to/MyDocset.docset
# Or archives:
zealpy add path/to/Python.tgz

🐍 Python Library API

Zealpy can also be imported directly inside your Python scripts:

import zealpy

# Quick symbol search
results = zealpy.search("DataFrame.groupby")
for r in results:
    print(f"[{r.type}] {r.name} -> {r.url}")

# Manage docsets programmatically
manager = zealpy.DocsetManager()
python_docs = manager.get("Python_3")
if python_docs:
    print(f"Total symbols: {python_docs.count_entries()}")
    entries = python_docs.search("os.path.join")
    print(entries[0].path)

# Start web server programmatically
zealpy.serve(port=8080)

⌨️ Web UI Keyboard Shortcuts

Shortcut Action
/ or Ctrl + K Focus search bar
/ Navigate search results
Enter Open selected documentation page
Escape Clear search / close dialogs

📜 License

This project is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later), preserving the license and open-source heritage of the original Zeal project created by Oleg Shparber.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zealpy-0.1.0.tar.gz (34.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zealpy-0.1.0-py3-none-any.whl (33.5 kB view details)

Uploaded Python 3

File details

Details for the file zealpy-0.1.0.tar.gz.

File metadata

  • Download URL: zealpy-0.1.0.tar.gz
  • Upload date:
  • Size: 34.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for zealpy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9ff811f6964727f29e95c0dbafd36b5b132f054c66f7cae770e45f0ba3897fa3
MD5 52f5897f8a73988d33ff7632ebb9e51d
BLAKE2b-256 9f9c2befc913f4e2da99a1c7c98036f4217a1679e32ddc2f5deef5a0955c6476

See more details on using hashes here.

Provenance

The following attestation bundles were made for zealpy-0.1.0.tar.gz:

Publisher: publish.yml on RuttiTuttii/zealpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zealpy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: zealpy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for zealpy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 298b88938448f712302ba10980981ab1b4561792878de5ab9ba19793b521e03c
MD5 d7d02bcd19ebbea8ff890869098245a3
BLAKE2b-256 52a710602c49f7e0b64e594a98d2f3cdd0fe9f3fd3406269d27b3c15fd487a9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for zealpy-0.1.0-py3-none-any.whl:

Publisher: publish.yml on RuttiTuttii/zealpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.0

2 files

This release

0.1.0 This release

2 files

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