How I Built This English Quiz Site Using ChatGPT and Google Drive

Introduction

As a lifelong learner and language enthusiast, I decided to create an English learning website that would help users practice listening and vocabulary through interactive quizzes. But I wanted to take it a step further—not just by publishing content, but by automating the entire content creation process using modern AI tools and cloud services.

In this article, I’ll walk you through how I built this site using:

  • ChatGPT to generate quiz content
  • Google Sheets to organize YouTube video links and quiz metadata
  • Google Drive for file storage and versioning
  • Python to transform AI output into HTML
  • WordPress to publish everything beautifully

Why I Wanted to Automate

Manually creating listening quizzes was time-consuming and repetitive. I wanted to:

  • Reduce my workload
  • Publish quizzes daily
  • Focus on improving quality and design
  • Eventually build a scalable learning platform

Tools I Used

ToolPurpose
ChatGPT APIGenerate listening quiz questions and vocabulary
Python (Colab)Automate formatting and file output
Google SheetsManage input data (video titles, links, status)
Google DriveStore raw and converted files
WordPress REST APIPost directly to my blog with HTML

How the Workflow Works

Here’s the big picture:

  1. Input: I paste YouTube video links into Google Sheets.
  2. Python script: Reads each row, fetches subtitles, and sends a prompt to ChatGPT.
  3. ChatGPT: Returns JSON containing:
    • Quiz introduction
    • Listening questions
    • Vocabulary definitions and examples
  4. Python: Formats it into a beautiful HTML file using a custom template.
  5. Drive/WordPress: Saves the HTML to Drive, or posts directly via the WordPress API.

I added CSS and JavaScript to support features such as:

  • Click-to-flip vocabulary cards
  • Speaker buttons for pronunciation
  • Instant feedback (correct/incorrect answers)
  • Final score display

Design Features 🎨

  • Responsive card layout using Flexbox
  • Interactive elements for user engagement
  • Mobile-friendly layout
  • Color-coded feedback for answers

Challenges I Faced ⚠️

  • WordPress auto-inserted unwanted <br> tags — solved by using cleaner structure
  • ChatGPT occasionally returned malformed JSON — added fallback logic
  • Colab required Drive authentication every time — may switch to Google Apps Script

What’s Next 🔄

  • Daily scheduled automation with Google Apps Script
  • User tracking and data storage using Firebase
  • Adding pronunciation and grammar quizzes
  • Possibly releasing the system as a template for others

Final Thoughts

Building this project has been one of the most satisfying learning experiences I’ve had. Not only did I enhance my technical skills, but I also created a tool that benefits learners.

If you’re a developer, teacher, or language learner—you can build this too.

Let me know if you’d like to see a full tutorial or clone the code.

Thanks for reading!

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top