Detect tech stack and production-readiness issues from a live URL or GitHub repo. Zero config, one command.
Project description
app-auditor
Detect tech stack and surface production-readiness issues from any live URL or GitHub repo. One command, zero config.
Quick start
# Clone and install
git clone https://github.com/ownmy-app/app-auditor
cd app-auditor
pip install -e .
# Audit a live URL
app-audit url https://vercel.com
# Audit a GitHub repo
app-audit repo myorg/myrepo
# JSON output
app-audit url https://myapp.com --format json
Usage
Audit a live URL
app-audit url https://myapp.com
# JSON output
app-audit url https://myapp.com --format json
Output:
URL: https://myapp.com
Title: My App
Stack: nextjs, react, supabase
Risks:
• Supabase client: verify auth flow, RLS, and env key exposure in client.
• Hosting on Vercel/Netlify: ensure env vars and serverless limits are documented.
Audit a GitHub repo
app-audit repo github.com/myorg/myrepo
# or shorthand
app-audit repo myorg/myrepo
Output:
Repo: myorg/myrepo
Detected: vite, react, supabase
Missing:
⚠ No Dockerfile found — containerization recommended for production.
⚠ No GitHub Actions workflows — consider adding CI/CD.
Suggestions:
→ Vite SPA: add Dockerfile and ensure server rewrite rules for SPA routing.
→ Supabase: verify RLS, auth flow, and env key exposure in client.
Set GitHub token to avoid rate limiting
export GITHUB_TOKEN=ghp_...
app-audit repo myorg/myrepo
Use as a library
from app_auditor import audit_url, analyze_repo_url
# Website audit
result = audit_url("https://myapp.com")
print(result["detected_stack"]) # {"nextjs": True, "react": True, ...}
print(result["risks"]) # ["Supabase client: verify RLS...", ...]
# GitHub repo audit
result = analyze_repo_url("https://github.com/vercel/next.js")
print(result["detected"]) # {"nextjs": True, "docker": False, ...}
print(result["missing"]) # ["No Dockerfile found..."]
print(result["suggestions"]) # ["Next.js: check output mode..."]
Detected stack signals
| Signal | Detection method |
|---|---|
| Next.js | __next in HTML, _next/ paths, next.js in server header |
| Vite | /assets/ + modulepreload in HTML |
| React | react / reactdom in HTML or package.json |
| Vue | v-bind or vue in HTML |
| Supabase | supabase in HTML or repo file paths |
| Vercel | vercel in HTML, server header, or vercel.json |
| Netlify | netlify in HTML, header, or config files |
| Docker | Dockerfile in repo tree |
| GitHub Actions | .github/workflows/ in repo tree |
Commercial viability
- Free tier: CLI and library (open source)
- Paid: API with bulk auditing, team dashboards, Slack notifications
- Inbound funnel: developers debugging production issues → upgrade path to managed services
Example output
app-audit url https://vercel.com
URL: https://vercel.com/
Title: Vercel: Build and deploy the best web experiences with the AI Cloud
Stack: nextjs, react, vercel
Risks:
• Hosting on Vercel/Netlify: ensure env vars and serverless limits are documented.
app-audit url https://supabase.com
URL: https://supabase.com/
Title: Supabase | The Postgres Development Platform.
Stack: nextjs, react, vue, supabase, vercel
Risks:
• Supabase client: verify auth flow, RLS, and env key exposure in client.
• Hosting on Vercel/Netlify: ensure env vars and serverless limits are documented.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
app_auditor-0.1.0.tar.gz
(7.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file app_auditor-0.1.0.tar.gz.
File metadata
- Download URL: app_auditor-0.1.0.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a198cd0420d9bb42200d9fa5d337f1779e6afb2b1c7a1b0d289756d0e42a1d38
|
|
| MD5 |
14ec6da0f4d64ef4c4b4a6cb2bc05fdf
|
|
| BLAKE2b-256 |
3de2c0bb5e6066f5f90d9a3dcc66e81fb6951c63c0728b87202347e42e4a76f5
|
File details
Details for the file app_auditor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: app_auditor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cbf90a4b97986b8d1a1433d13b84c201a28ec2e16752766e5828371fd995f71
|
|
| MD5 |
9d47b84e25ee537d23f79b07cb64c467
|
|
| BLAKE2b-256 |
a47039ace21ea0b6669dd68f60afbb15ac3b47298c1286baf76238b5b1644a68
|