AI Video Compliance Dashboard
Enterprise-grade compliance scanning and certification for AI-generated video projects.
What is this?
A production-ready web dashboard that analyzes AI video projects (Clapper, MimicMotion, Runway workflows) and generates audit trails with full model provenance tracking, training data license verification, and EU AI Act compliance scoring. It integrates your existing synth-provenance-api and eu-compliance-certificate-generator into a polished SaaS interface that studios can confidently use to ship AI video to enterprise clients with legal documentation.
Features
- Drag-and-drop video upload with automatic metadata extraction
- Real-time provenance scanning – detects Stable Diffusion, Runway, Pika, and other model signatures
- EU AI Act compliance scoring with specific Article citations (Articles 10, 52, etc.)
- One-click PDF certificate generation with studio branding options
- API integration for Clapper/MimicMotion projects via webhooks and CLI plugins
- Compliance dashboard – track audit trails and certification history across projects
- Team collaboration – multi-user accounts with role-based access
- Freemium SaaS billing – integrated Stripe for subscriptions and metering
Quick Start
Prerequisites
- Python 3.11+
- PostgreSQL 14+
- Docker & Docker Compose (optional)
Installation
-
Clone and install dependencies:
pip install -r requirements.txt
-
Configure environment:
cp .env.example .env # Edit .env with your API keys, database URL, Stripe credentials
-
Run database migrations:
alembic upgrade head
-
Start the application:
python app/main.pyOr with Docker:
docker-compose up -d
-
Access the dashboard at
http://localhost:8000
Usage Examples
Upload and scan a video project
curl -X POST http://localhost:8000/api/projects \
-H "Authorization: Bearer YOUR_TOKEN" \
-F "file=@video.mp4" \
-F "project_name=Q1 Campaign"
Generate compliance certificate
curl -X POST http://localhost:8000/api/certificates \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"project_id": "proj_123",
"studio_name": "Acme Studios",
"include_branding": true
}'
Webhook integration (MimicMotion/Clapper)
# Configure webhook endpoint in your video tool:
POST /api/webhooks/video-export
{
"project_id": "clapper_proj_456",
"video_url": "s3://bucket/video.mp4",
"model_metadata": {...}
}
Tech Stack
- Backend: FastAPI + SQLAlchemy
- Database: PostgreSQL with Alembic migrations
- Authentication: JWT-based auth with role-based access control
- Integrations: Stripe (billing), synth-provenance-api (model detection), eu-compliance-certificate-generator (PDF certificates)
- Deployment: Docker, Docker Compose
- API Documentation: Auto-generated OpenAPI/Swagger at
/docs
Project Structure
app/
├── main.py # FastAPI application
├── config.py # Environment and app configuration
├── database.py # SQLAlchemy setup
├── models.py # Database models
├── schemas.py # Pydantic request/response schemas
├── auth.py # JWT and auth logic
└── routers/
├── auth.py # User login/registration
├── projects.py # Video project endpoints
├── scans.py # Compliance scanning
├── certificates.py # PDF generation
├── subscriptions.py # Stripe billing
└── webhooks.py # Inbound integrations
Environment Variables
See .env.example for all required variables. Key settings:
DATABASE_URL– PostgreSQL connection stringSTRIPE_API_KEY– Stripe secret key for billingSYNTH_PROVENANCE_API_URL– Your model detection microserviceEU_COMPLIANCE_API_URL– Your compliance certificate generatorJWT_SECRET– Secret key for token signing
API Documentation
Full interactive API docs available at /docs (Swagger UI) or /redoc (ReDoc) after starting the server.
License
MIT
Release files for ai-video-compliance-dashboard 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 | |
|---|---|---|---|
| ai_video_compliance_dashboard-0.1.0.tar.gz | 15.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ai_video_compliance_dashboard-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.0 kB
Release files / ai_video_compliance_dashboard-0.1.0.tar.gz
| Download URL | ai_video_compliance_dashboard-0.1.0.tar.gz |
|---|---|
| Size | 15.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4b578ac31f2fddaab12e361487cebfb2befef4468029010a183e01a4d8688f28
|
|
BLAKE2b-256 checksum How to use checksums |
931648aa1aea5f9611186a1bf98828d80eea2fdc4604a13840fcd63d8c5fc39e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / ai_video_compliance_dashboard-0.1.0-py3-none-any.whl
| Download URL | ai_video_compliance_dashboard-0.1.0-py3-none-any.whl |
|---|---|
| Size | 17.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e210453cea219f4c25f8b0c275875da8834e34d52b048173fd3922cc744216b8
|
|
BLAKE2b-256 checksum How to use checksums |
91d12501617bc4653c591e4392a1c75e3b2363a69c0ec55ebd8d59ec39ee7b32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|