Thank you for your interest in TechDemoForge! This project aims to be the most technically honest engine for technical demo generation. We prioritize local-first architecture and verifiable storyboard planning.
We support two primary development paths:
- Backend:
cd backend && python -m venv venv && pip install -r requirements.txt - Frontend:
cd frontend && npm install - FFmpeg: Must be installed on your host system.
- Run
docker-compose up --build. - The
backend/datadirectory is bind-mounted to the host, so your projects persist across container restarts.
backend/app/providers/: Start here if you want to add or modify provider logic (LLMs, TTS, Video).backend/app/services/job_service.py: Internal background job orchestrator.backend/app/services/rendering.py: FFmpeg multiplexing and scene assembly logic.frontend/components/: Core UI components including the capability matrix and storyboard editor.
When adding a new provider (e.g., OpenAI, ElevenLabs):
- Create a new adapter in
backend/app/providers/. - Ensure it implements the same interface as the
minimaxandmockproviders. - Important: Always maintain parity with the
mockprovider. Every new capability should have a deterministic offline fallback to keep the repository accessible to testers.
- Technical Honesty: Documentation and tooltips should accurately reflect the status of an integration (e.g., "Wired when configured").
- Local-First: Avoid adding mandatory cloud dependencies or databases.
- Provider Isolation: Logic for specific APIs should stay within the
providers/layer. - Mock Parity: Do not break the ability to run the full workflow offline using
mockproviders.
TechDemoForge is intended for technical education and engineering communication. Do not submit PRs that add features for generating misleading content or bypassing vendor safety filters.