An AI-powered CLI tool that uses Gemini API to fetch Coursera course data, save it locally in JSON and SQLite, and allows custom terminal querying with clean, tabulated output.
- 🔍 Ask for data on any course on Coursera (e.g., “Machine Learning”)
- 🤖 Uses Gemini API to fetch responses in structured JSON
- 💾 Saves responses as both
.jsonfiles and in a local SQLite database - 📋 Custom terminal querying with filters (by provider, difficulty, etc.)
- 📊 Outputs results in a pretty tabular format using
tabulate - 🧰 Reusable modular code (
SQLite,Enum, etc.)
.
├── main.py # CLI logic + while loop
├── utils.py # Enum for abbreviations, etc.
├── db/
│ ├── SQLManager.py # Custom SQLite manager with context support
│ └── courses.db # Local database file
├── Course Details/
│ └── ai_courses.json # JSON file exports
├── README.md
└── requirements.txtgit clone https://github.com/fake-botpeter17/CourseraAIExplorer.git
cd CourseraAIExplorer
pip install -r requirements.txt
python main.pyThen type something like this:
> Machine Learning Specializationand get
+---------+------------------+-----------------------+----------------+----------------------------------------------+----------------------------------------------+---------------------+
| S.No. | Course Name | Course Provider | Course Type | Sub-Courses | Description | Certificate Value |
+=========+==================+=======================+================+==============================================+==============================================+=====================+
| 1 | Machine Learning | Stanford University / | Specialization | ["Machine Learning Specialization - | This Specialization, taught by Andrew Ng, is | High |
| | Specialization | DeepLearning.AI | | Introduction to Machine Learning", "Machine | a foundational program that will teach you | |
| | | | | Learning Specialization - Supervised Machine | the fundamental principles of machine | |
| | | | | Learning: Regression and Classification", | learning. You'll learn about supervised | |
| | | | | "Machine Learning Specialization - Advanced | learning, unsupervised learning, and best | |
| | | | | Learning Algorithms", "Machine Learning | practices in machine learning. This | |
| | | | | Specialization - Machine Learning System | specialization provides a strong | |
| | | | | Design"] | understanding of machine learning, perfect | |
| | | | | | for individuals seeking to start their | |
| | | | | | journey in the field. | |
+---------+------------------+-----------------------+----------------+----------------------------------------------+----------------------------------------------+---------------------+
- 🐍 Python 3.11+
- 🧠 Gemini API (via Google Generative AI)
- 🗃 SQLite3 for persistent local storage
- 🧾
tabulatefor clean CLI output - 📁 Custom Module:
SQLitemanager withcreateTable(),selectTable(), etc. - 📤 Enum Utility:
CourseTypeandCertificateValueinutils.py
This project is licensed under the MIT License.

