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.2.0.tar.gz (39.1 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.2.0-py3-none-any.whl (38.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for zealpy-0.2.0.tar.gz
Algorithm Hash digest
SHA256 298b4679e8ed4419c038ad78fe31c9380410217e37a19405b61eb30e9b54da4b
MD5 1f767c4a63225b8b540a92b5da1ebaa0
BLAKE2b-256 272b23c0e21a5304b306980979d4cafdc335395ace75bad88c1790f38ba2b1d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for zealpy-0.2.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.2.0-py3-none-any.whl.

File metadata

  • Download URL: zealpy-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 38.0 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a181b6bb3df144a2d767be42c3bc468cd888e5dbb1c813fee36c44e84af7590
MD5 ed0d9d0d3e0af95003ea7ffa912adb9f
BLAKE2b-256 e9fcdab1626d5f2dc6e2540de9d6dd4b95b243489585fa157de26a950ab9853e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zealpy-0.2.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

This release

0.2.0 This release

2 files

0.1.0

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