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 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.3.0.tar.gz (9.6 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.3.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyoverview-0.3.0.tar.gz
  • Upload date:
  • Size: 9.6 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.3.0.tar.gz
Algorithm Hash digest
SHA256 e2a25757f93a128b60f8660d6f7460f7c21d95a5c6de6148b78b503a71563042
MD5 9af00a615fc43443ac334f0e3f4edd00
BLAKE2b-256 6ddc795f267f88f487fb7ab36571cc4fabfa0854d14acd924a45fd21437bf947

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyoverview-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 27f55e7cc0939f272fc33eef1423e35addccd0509459b9f2e16c37d358525a18
MD5 ac6086ef2bb59771166150e95e7ad2d4
BLAKE2b-256 5c57a6ae6b1b93af80a180a2a5be127b5296bb17406dcd6d8be3db141e259150

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