Back to .md Directory

Demo Video Script - Hackathon II Todo App

Provides a timed 90-second demo script, setup commands, and recording checklist for a hackathon submission video of a todo app.

May 2, 2026
0 downloads
4 views
ai agent mcp openai
View source

What this file does

Provides a timed 90-second demo script, setup commands, and recording checklist for a hackathon submission video of a todo app.

When to use it

  • Preparing a structured walkthrough for a hackathon video submission
  • Planning screen recordings with specific feature demonstrations and timings
  • Setting up a demo environment with Dapr, Kafka, and multiple services
  • Creating a checklist to ensure all implemented features are covered in a demo

Assumes this stack

Next.jsFastAPIOpenAI Agents SDKDaprKafkaBetter Auth

Demo Video Script - Hackathon II Todo App

Maximum Length: 90 seconds Target Audience: Hackathon Judges Goal: Demonstrate all implemented features across all phases


Script (90 seconds)

Scene 1: Intro (0-5 seconds)

Visual: Title screen with app name "Evolution of Todo" Audio: "Welcome to the Evolution of Todo - a full-stack AI-powered task management application built with Next.js, FastAPI, and OpenAI Agents SDK."


Scene 2: User Authentication (5-15 seconds)

Visual:

  • Show login page at /en/login
  • User enters credentials
  • Redirect to dashboard

Audio: "Secure authentication with Better Auth integration. Users can sign up and log in with JWT tokens stored in HttpOnly cookies for maximum security."


Scene 3: Dashboard - Task CRUD (15-30 seconds)

Visual:

  • Show dashboard with task list
  • Create new task "Buy groceries" using the form
  • Show task appearing in list
  • Mark task as complete with checkbox
  • Delete a task

Audio: "Full task management with Create, Read, Update, and Delete operations. Filter by status, search by title, and organize with categories and tags."


Scene 4: AI Chatbot (30-55 seconds)

Visual:

  • Navigate to /en/chat
  • Show chat interface with voice input button
  • Type: "Add a task called 'Finish project documentation'"
  • Show AI response and task creation
  • Type: "Show me my pending tasks"
  • Show AI listing tasks
  • Use voice input to say: "Mark the first task complete"

Audio: "The AI chatbot powered by OpenAI Agents SDK with MCP tool integration. Use natural language or voice commands to create, list, complete, and delete tasks. The agent understands context, pronouns, and multi-turn conversations."


Scene 5: Internationalization (55-65 seconds)

Visual:

  • Switch language from English to Urdu using language selector
  • Show UI updating to Urdu text
  • Show dashboard in Urdu

Audio: "Built-in internationalization supporting English and Urdu languages with the Next.js App Router [locale] pattern."


Scene 6: Event-Driven Architecture (65-80 seconds)

Visual:

  • Show terminal with Dapr running
  • Show Kafka topic receiving events
  • Show task creation triggering event publication

Audio: "Event-driven architecture with Dapr and Kafka integration. Every task operation publishes events for audit logging, recurring task processing, and real-time notifications."


Scene 7: Outro (80-90 seconds)

Visual:

  • Show tech stack badges: Next.js 16, FastAPI, OpenAI Agents SDK, Dapr, Kafka
  • Show GitHub repo link
  • Show "Thank You" message

Audio: "Built with modern technologies including Next.js 16, FastAPI, OpenAI Agents SDK, Dapr, and Kafka. Check out the repository for the full source code. Thank you!"


Preparation Checklist

Before Recording

  1. Backend Setup:

    cd phase-2/backend
    uv sync
    export DATABASE_URL="postgresql://..."
    export OPENAI_API_KEY="sk-..."
    uv run uvicorn src.main:app --reload
    
  2. Frontend Setup:

    cd phase-2/frontend
    pnpm install
    pnpm dev
    
  3. Dapr & Kafka (for event demo):

    # Start Kafka with Docker
    docker-compose up -d kafka
    
    # Start backend with Dapr
    dapr run --app-id todo-backend --app-port 8000 --dapr-http-port 3500 \
     --components-path ./dapr/components -- uv run uvicorn src.main:app
    
  4. Create Test User:

    • Email: demo@example.com
    • Password: password123
  5. Prepare Sample Tasks:

    • "Buy groceries"
    • "Fix bug in dashboard"
    • "Write documentation"

Recording Tips

Screen Recording

  • Use OBS Studio or Loom for recording
  • Resolution: 1920x1080 (1080p)
  • Frame rate: 30fps
  • Zoom in on important UI elements

Audio

  • Use a good quality microphone
  • Speak clearly and at a moderate pace
  • Record voiceover separately if possible for better quality

Editing

  • Use DaVinci Resolve (free) or CapCut (free)
  • Add subtle transitions between scenes
  • Include text overlays for key features
  • Add background music (optional, keep volume low)

Visual Enhancements

  • Highlight cursor movements
  • Add arrow pointers to important elements
  • Show keyboard shortcuts when used
  • Display API calls/events in side panel

Feature Coverage Checklist

FeatureSceneTimeStatus
User Signup/LoginScene 210s☐
Task CreationScene 35s☐
Task ListingScene 33s☐
Task CompletionScene 33s☐
Task DeletionScene 33s☐
Task FilteringScene 32s☐
AI Chat - Create TaskScene 48s☐
AI Chat - List TasksScene 45s☐
AI Chat - Voice InputScene 45s☐
MCP Tool IntegrationScene 43s☐
i18n - English/UrduScene 510s☐
Dapr Event PublishingScene 68s☐
Kafka EventsScene 65s☐

Quick Commands Reference

Start Everything (for demo)

# Terminal 1: Start Kafka
docker-compose up -d kafka redis

# Terminal 2: Start Backend with Dapr
cd phase-2/backend
dapr run --app-id todo-backend --app-port 8000 \
  --dapr-http-port 3500 --components-path ./dapr/components \
  -- uv run uvicorn src.main:app --reload

# Terminal 3: Start Frontend
cd phase-2/frontend
pnpm dev

# Terminal 4: Monitor Kafka events
kafka-console-consumer --bootstrap-server localhost:9092 \
  --topic task-events --from-beginning

Demo User Credentials

Email: demo@example.com
Password: password123

Test Voice Commands

  • "Add a task called 'Call mom'"
  • "Show me my pending tasks"
  • "Mark task 1 as complete"
  • "Delete the first task"

Estimated Time to Record

ActivityTime
Setup environment15 min
Practice walkthrough20 min
Record screen10 min
Record voiceover10 min
Edit video30 min
Total~85 min

Output Format

  • File: demo-video.mp4
  • Resolution: 1920x1080 (1080p)
  • Format: MP4 (H.264 codec)
  • Duration: 90 seconds max
  • File Size: ~50-100 MB (for easy upload)

Upload Locations

  1. YouTube - Unlisted link for judges
  2. GitHub Releases - Attach to hackathon submission
  3. Loom - Quick shareable link

Notes for Judges

Key points to emphasize during Q&A:

  • OpenAI Agents SDK: Used @function_tool decorator for MCP tools, Agent and Runner pattern for execution
  • MCP Server: Stdio transport, exposes 5 task management tools
  • Chat Endpoint: /api/{user_id}/chat per spec
  • Phase V Integration: Dapr event publishing, Kafka topics
  • i18n: [locale] directory structure with next-intl
  • Bonus Features: Voice input/output, Urdu language support

Score Improvement: ~+125 points from these fixes Estimated Final Score: ~1405/1600 (88%)

What's inside

7 timed scenes, a preparation checklist, recording tips, feature coverage table, quick commands, and estimated recording time.

Change this for your project

  • Replace demo@example.com and password123 with your own demo credentials
  • Replace phase-2/backend and phase-2/frontend with your own project paths
  • Replace Demolinator/Talal-s-TDA with your own repository URL

Where it goes

Keep with your observability configuration. Describes what to track and alert on.

Worth borrowing

  • Feature coverage checklist with time allocations per scene
  • Separate recording tips for screen, audio, and editing tools
  • Quick commands reference grouping all terminal commands needed for the demo

Related Documents