Skip to content

Contributing

Development Installation

Requirements

  • uv is the default tool used for development in this repository.
  • For building vspackrgb and vsview-histogram, you will need Cargo.
  • For building vsview-editor, you will need Vite+ and pnpm on your PATH (the build hook calls it and is automatically added when Vite+ is installed).
  • For working on any TypeScript/JSON/YAML code (formatting, linting, type checking), you will need Vite+.

Clone the repository and sync all packages:

git clone --recurse-submodules https://github.com/Jaded-Encoding-Thaumaturgy/vs-view.git
cd vs-view
uv sync --all-packages --all-groups --all-extras
vp install

Run the development version:

uv run vsview

Code Quality

From the repository root:

  • Python:

    uv run ruff check .
    uv run ruff format --check --diff
    uv run mypy .
    uv run pytest
    

  • TypeScript/JSON/YAML:

    vp check          # lint + format check + type check
    vp check --fix    # apply lint and format fixes
    vp run -r test    # run all TypeScript test suites
    vp run -r build   # build all TypeScript projects
    

Packaging & Distribution

VSView can be packaged as a standalone executable using PyApp and the custom vsapp CLI tool.

For detailed instructions, see the Packaging & Distribution guide.