Web Design AI Header

Demo 6: Building the Complete Multi-Blueprint Application

Watch a complete walkthrough of building all four blueprints (Tickers, Weather, Movies, Chatbot) in one Flask application with API integration.

Demo Objectives

  • See the complete application structure with all four blueprints
  • Understand how blueprints are registered and organized in app.py
  • Watch live demonstrations of all four features working together
  • Learn troubleshooting techniques when APIs don't work as expected
  • Observe proper project organization and file structure
  • See the application with your name in the header and Module 6 branding

Watch: Module 6 Demo - Four Blueprint Application Walkthrough

Step-by-Step Demonstration

Step 1: Demo Application Overview

This demo shows a complete Flask application with four blueprints:

  • Tickers Blueprint: Add and track stock prices (e.g., VTSAX)
  • Weather Blueprint: Track city temperatures (e.g., Macon, Georgia)
  • Movies Blueprint: Manage movie database with OMDB (e.g., Dances with Wolves)
  • Chatbot Blueprint: AI-powered Q&A with Groq (e.g., "When is Christmas?")

Step 2: Application Features Demonstrated

Header & Navigation:

  • Your name displayed in the header
  • "Module 6" branding clearly visible
  • Navigation links to Home, About, Tickers, Weather, Movies, Chatbot
  • Professional footer

Stock Tickers Feature:

  1. Add ticker symbol (VTSAX), name (Total Stock), initial price ($1)
  2. Click "Update Price" to fetch live stock price from API
  3. Ticker ID auto-increments automatically
  4. Display all tickers in organized table

Weather Tracker Feature:

  1. Add city (Macon) and state (Georgia) with initial temp (15°)
  2. Click "Update Weather" to fetch current temperature
  3. Live temperature updates from weather API (e.g., 82°)
  4. Display weather for multiple cities

Step 3: Movies & Chatbot Features

Movies Database Feature:

  1. Add movie by title only ("Dances with Wolves")
  2. Click "Fetch Data" to populate from OMDB API
  3. Automatically fills: Director (Kevin Costner), year, plot, poster image
  4. View detailed movie page with images and information
  5. Edit movie details if needed
  6. Delete movies from database

Note: The demo mentions this feature can be "a little bit buggy" - this is normal when working with external APIs that may have incomplete data.

AI Chatbot Feature:

  1. Ask a question: "When is Christmas this year?"
  2. Send question to Groq API
  3. Receive AI-generated response: "Christmas is on December 25th. So it's on a Monday."
  4. Response displays immediately on the page

Step 4: Project Structure

The demo application follows this structure:

your-repo/
├── app.py                    # Main Flask app, registers all blueprints
├── database.db              # SQLite database
├── .env                     # API keys (never commit!)
├── .gitignore               # Excludes .env, database, etc.
├── requirements.txt         # Python dependencies
├── templates/
│   ├── base.html           # Base template with header/footer
│   ├── index.html          # Home page
│   ├── about.html          # About page (optional)
│   ├── tickers.html        # Tickers page
│   ├── weather.html        # Weather page
│   ├── movies.html         # Movies list page
│   ├── movie_view.html     # Individual movie view
│   ├── movie_edit.html     # Movie edit page
│   └── chatbot.html        # Chatbot page
└── blueprints/
    ├── tickers.py
    ├── weather.py
    ├── movies.py
    └── chatbot.py

Note: All templates are in the main templates/ folder, NOT in subfolders.

Step 5: Key Takeaways from Demo

  • Organization: Each feature is isolated in its own blueprint
  • Templates: All templates in one main templates folder (no subfolders)
  • API Integration: Each blueprint uses a different external API
  • Error Handling: Gracefully handle API failures and edge cases
  • User Experience: Clean navigation, clear branding, professional layout
  • Database: Auto-incrementing IDs, proper data persistence

Step 6: What You'll Build

By following this demo and completing the duplication assignment, you'll create a production-ready Flask application that demonstrates:

  • ✓ Professional Flask blueprint architecture
  • ✓ Integration with 4+ external APIs
  • ✓ Full CRUD operations (Create, Read, Update, Delete)
  • ✓ Database management with SQLite
  • ✓ Secure API key management
  • ✓ Error handling and user feedback
  • ✓ Responsive Bootstrap 5 UI

This project showcases real-world development skills that employers value!