Skip to main content

A two-pane terminal outline browser for Python modules.

Project description

pyoverview

pyoverview is a small terminal outline browser for Python files. It parses a module with Python's ast module and opens a two-pane TUI:

  • left pane: classes, functions, async functions, and nested definitions
  • right pane: source code, automatically scrolled to the selected symbol

Sections

Add module-level region comments to group the outline into larger chunks:

# region Configuration

DEFAULT_MODEL = "gpt-5"


def load_config():
    ...


# region Review Model

class Finding:
    ...


async def score_patch():
    ...

pyoverview renders those region comments as section nodes:

reviewer.py
  section: Configuration  L1
    function: load_config()  L6
  section: Review Model  L10
    class: Finding  L12
    async function: async score_patch()  L16

Only comments starting at the beginning of a line with # region create sections. A section runs until the next region marker or the end of the file.

Install

uvx pyoverview path/to/module.py

If you are developing locally:

uv run pyoverview path/to/module.py

Keys

  • Up / Down, k / j: move through the outline
  • PageUp / PageDown: scroll code
  • g / G: jump to first / last outline item
  • Enter: center the selected symbol in the code pane
  • r: reload the file from disk
  • q: quit

Non-interactive Use

pyoverview --print path/to/module.py

This prints the outline without opening the TUI.

Project details


Download files

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

Source Distribution

pyoverview-0.2.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

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

pyoverview-0.2.0-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyoverview-0.2.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","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}

File hashes

Hashes for pyoverview-0.2.0.tar.gz
Algorithm Hash digest
SHA256 98304f527c933865a16e2e5fa02f5ba0c18633e5bf0cc5df2e538f37b0e460e2
MD5 9f5055562fec637f152aac2af37d65b9
BLAKE2b-256 632f15a30783dfc13049347608d718bb2871a28505f06836936afa8500dc7f0c

See more details on using hashes here.

File details

Details for the file pyoverview-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pyoverview-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","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}

File hashes

Hashes for pyoverview-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1e67fe2db7f789883f69655902fb80a7c3ce33aa0433edf733ffc36858bb1d37
MD5 b5022a5fd93f900ec93fde11ca5b2c62
BLAKE2b-256 f75e266118310f43153cbbc1f7eee9cd910fb2f049844f58ceb5e02db556b190

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page