Skip to main content

RepoShowcase

RepoShowcase analyzes an existing multi-language software repository and turns verified repository facts into an evidence-based project showcase. The same storyboard can be exported as an interactive HTML presentation, an editable PowerPoint file, or an MP4 video.

Motivation

Explaining an unfamiliar software project usually requires manually collecting facts from its README, source tree, dependency files, tests, and Git history. That process is slow and can lead to claims that are difficult to verify. RepoShowcase automates the evidence-gathering stage while keeping each claim linked to the repository-relative path that supports it.

What makes it different

  • Evidence before presentation: generated claims come from files and Git data found in the repository rather than invented project descriptions.
  • One model, three outputs: HTML, PPTX, and MP4 are generated from the same storyboard, so the formats remain consistent.
  • Multi-language fallback: common languages receive file-level detection, while unfamiliar file types still contribute generic repository evidence.
  • Useful for existing projects: the target repository does not need to follow a special framework or add RepoShowcase-specific annotations.

Example use cases

  • Give a one-minute overview of a team software project.
  • Create a review presentation for an unfamiliar open-source repository.
  • Produce an evidence-backed project summary for a class demonstration.
  • Generate a machine-readable JSON report for later analysis or tooling.

Quick start

pip install -e ".[dev]"
reposhowcase build ./my-project --outputs html,pptx,mp4 --output showcase/

HTML is dependency-free. PPTX requires the pptx extra, and MP4 requires an ffmpeg executable on PATH.

After the first PyPI release, the installation command will become:

pip install reposhowcase

For development with optional exporters and test tools:

pip install -e ".[dev,pptx]"

Analysis pipeline

scan repository
    -> detect languages and project files
    -> extract README, dependency, test, symbol, and Git evidence
    -> build a four-slide storyboard
    -> export HTML, PPTX, MP4, or JSON

The default storyboard contains:

  1. Project idea — README-based project description
  2. How it works — languages, source files, and dependencies
  3. Evidence — tests, public Python symbols, and contributors
  4. Demo — commands found in the README and next steps

Python API

from reposhowcase import analyze_repository, build_storyboard
from reposhowcase.exporters import export_html

report = analyze_repository("./my-project")
storyboard = build_storyboard(report, duration=60)
export_html(storyboard, "showcase.html")

The analyzer deliberately reports unknown languages and generic file evidence instead of guessing unsupported details. The CLI also supports json, which writes the analyzed report as machine-readable data.

Team

RepoShowcase is developed by a six-member student project team for the CS1302A Agentic Coding project. Team member names will be added before the public project release.

Development

The package uses a src/ layout. Run the focused checks from the repository root:

python -m pytest
python -m ruff check src tests

The public repository will contain the project history, documentation, automated checks, and release information. Personal contact details and student IDs should not be included in the package.

Metadata

Release files for reposhowcase 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reposhowcase 0.1.0
File Size Uploaded Provenance Actions
reposhowcase-0.1.0.tar.gz 12.2 kB Without provenance Details for reposhowcase-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for reposhowcase 0.1.0
File Interpreter ABI Platform Actions
reposhowcase-0.1.0-py3-none-any.whl Python 3 none any Details for reposhowcase-0.1.0-py3-none-any.whl

Total release size: 24.5 kB

Release files / reposhowcase-0.1.0.tar.gz

Download URL reposhowcase-0.1.0.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
79f52fa3e1519b6b1c14bc8cc7152249718491b38bd748aac72b864933ad5f5f
BLAKE2b-256 checksum
How to use checksums
bcc68460002c08c3cd4c8376fee0b36ae83a89a30c33a679df9d717278e1192d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.3

Release files / reposhowcase-0.1.0-py3-none-any.whl

Download URL reposhowcase-0.1.0-py3-none-any.whl
Size 12.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
78a82977f67f64161459fe5e9d113004846929218b256d6d6e898e2c7af14bec
BLAKE2b-256 checksum
How to use checksums
fd131108e560bbffc16859589b5d54057738460ad0f3660f7d6b83314adf8edd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.3

Security for reposhowcase 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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