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:
- Project idea — README-based project description
- How it works — languages, source files, and dependencies
- Evidence — tests, public Python symbols, and contributors
- 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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.