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: syntax-highlighted source code on the terminal's default background, automatically scrolled to the selected symbol

Sections

Add module-level section 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():
    ...

# %% Title cell comments are also supported:

# %% SFT

def sft_dataset():
    ...


# %% GRPO

def grpo_dataset():
    ...

pyoverview renders those 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 , # %% , or #%% create sections. A section runs until the next section 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.4.0.tar.gz (11.1 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.4.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyoverview-0.4.0.tar.gz
  • Upload date:
  • Size: 11.1 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.4.0.tar.gz
Algorithm Hash digest
SHA256 0a12e6a29a6c3e1c45be62cf74fa3ecdbdd094601a389e4442394ed1faa38320
MD5 ca03548ed70ab6a26073e81a371f99e7
BLAKE2b-256 6af43e09900c3a2399f465a3f0dbb9c94d6a894bf971b81854ff80aa531e43b1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyoverview-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 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.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 285d2f013076cd9eac0a1bc6e9ddfe90c7beefb6029e4136e304bc87ad3ef273
MD5 4fed5283a5988c6565cd60dc5f6db888
BLAKE2b-256 3ee19bb3c229c4df44730cb12e2400f8af36036a11f125ff645a976045899ca3

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