A QA automation and AI testing platform featuring a Netflix-like movie browsing interface built with FastAPI, Tailwind CSS and HTMX for dynamic interactions.
- Netflix-like Interface: Dark theme with red accent colors
- Movie Discovery: Browse popular, top-rated, and upcoming movies
- Search Functionality: Search for movies by title with real-time results
- Movie Details: Detailed movie information with cast, crew, and recommendations
- Genre Filtering: Filter movies by genre
- Person Profiles: View actor/director profiles with filmography
- Responsive Design: Mobile-friendly interface with Netflix-inspired styling
- Fast Performance: Async API calls and efficient caching
- Backend: FastAPI (Python web framework)
- Frontend: Jinja2 templates with HTMX for dynamic interactions
- Styling: Tailwind CSS with Netflix-inspired dark theme and red accents
- API Integration: TMDB (The Movie Database) API
- HTTP Client: httpx for async API requests
- Data Validation: Pydantic models
-
Clone the repository:
git clone <repository-url> cd qa-ai-agent
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r netflix/requirements.txt
-
Set up environment variables:
cd netflix cp env.example .envEdit
.envand add your TMDB API credentials:TMDB_API_KEY=your_tmdb_api_key_here TMDB_API_READ_ACCESS_TOKEN=your_tmdb_read_access_token_here -
Get TMDB API credentials:
- Visit TMDB API
- Create an account and request an API key
- Add the API key and read access token to your
.envfile
cd netflix
python run.pyThe application will be available at http://localhost:8000
cd netflix
uvicorn main:app --host 0.0.0.0 --port 8000cd netflix
docker-compose upOnce the application is running, you can access:
- Interactive API docs:
http://localhost:8000/docs - ReDoc documentation:
http://localhost:8000/redoc
qa-ai-agent/
├── netflix/ # QA AI Agent - Movie browsing platform
│ ├── config/ # Configuration settings
│ ├── models/ # Pydantic data models
│ ├── routers/ # API route handlers
│ ├── services/ # External service integrations
│ ├── templates/ # Jinja2 HTML templates with Netflix styling
│ ├── static/ # Static files (CSS, JS)
│ ├── tests/ # Test files
│ ├── main.py # Application entry point
│ ├── requirements.txt # Python dependencies
│ ├── Dockerfile # Container configuration
│ └── README.md # Detailed documentation
├── CONVERSION_SUMMARY.md # Conversion details
├── CLEANUP_SUMMARY.md # Cleanup summary
└── README.md # This file