From f0875711aa1a47d836ffcc5bf482eec97e767c52 Mon Sep 17 00:00:00 2001 From: Abderrahim Adrabi <184391033+abderrahim-lectures@users.noreply.github.com> Date: Sat, 1 Aug 2026 21:46:14 +0100 Subject: [PATCH] fix: remove stale PR-branch/TODO notes from project docs Several project pages still carried self-referential notes like "TODO: update these badge links once this PR merges" or "will point at main once merged" left over from when those PRs were still open. All of these projects are already merged to main, so the notes and their underlying badge links are stale and misleading; this drops the leftover comments/wording. --- docs/projects/agentic-code-reviewer/index.md | 1 - docs/projects/meeting-notes-summarizer/index.md | 1 - docs/projects/multi-agent-research/index.md | 1 - docs/projects/recipe-planner-agent/index.md | 1 - docs/projects/study-buddy-agent/index.md | 1 - docs/projects/trivia-bot/index.md | 1 - docs/projects/voice-to-task-agent/index.md | 1 - docs/projects/webcam-object-counter/index.md | 2 +- docs/projects/wordle-clone/index.md | 2 -- 9 files changed, 1 insertion(+), 10 deletions(-) diff --git a/docs/projects/agentic-code-reviewer/index.md b/docs/projects/agentic-code-reviewer/index.md index 963abd9..9fe7c71 100644 --- a/docs/projects/agentic-code-reviewer/index.md +++ b/docs/projects/agentic-code-reviewer/index.md @@ -37,7 +37,6 @@ This assumes Python 101 and enough comfort with git to know what `git diff` show **Google Colab, Kaggle Notebooks, and Binder are a reasonable way to *try* the tool, but not to run it for real.** Neither gives you a real local git repository with commit history by default, and the whole premise of this tool is reviewing *your own* in-progress work — a notebook's ephemeral filesystem has none of that. The notebook below works around this honestly, rather than pretending the gap doesn't exist: it `!git clone`s this course's own repository into the notebook and reviews one real, small, historical commit from it with `git show`, so every piece of the tool (the `subprocess` diff capture, the system prompt, the LLM call, the structured output) still runs against real, real-looking output — it's just reviewing a fixed example commit instead of anything you personally wrote. Use it to see the tool work end to end with zero setup; switch to local `uv` or a Codespace once you want it pointed at your own actual changes. -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/agentic-code-reviewer/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/agentic-code-reviewer/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Fagentic-code-reviewer%2Fnotebook.ipynb) diff --git a/docs/projects/meeting-notes-summarizer/index.md b/docs/projects/meeting-notes-summarizer/index.md index 18f4c91..de64ca9 100644 --- a/docs/projects/meeting-notes-summarizer/index.md +++ b/docs/projects/meeting-notes-summarizer/index.md @@ -38,7 +38,6 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the **Google Colab, Kaggle Notebooks, or Binder** work well too, and are genuinely good options here — this project is a lightweight script that makes a handful of API calls, not something that needs a GPU or a real project structure to be useful. A ready-to-run notebook version ships with this project — click a badge below to open it, no local setup required — or create your own notebook, run `!pip install openai python-dotenv` in a cell, paste the scripts below in as notebook cells, and set your API key with a notebook secret (Colab) or environment variable instead of a `.env` file. -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/meeting-notes-summarizer/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/meeting-notes-summarizer/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Fmeeting-notes-summarizer%2Fnotebook.ipynb) diff --git a/docs/projects/multi-agent-research/index.md b/docs/projects/multi-agent-research/index.md index 0684222..c947ccb 100644 --- a/docs/projects/multi-agent-research/index.md +++ b/docs/projects/multi-agent-research/index.md @@ -39,7 +39,6 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the **Google Colab, Kaggle Notebooks, or Binder** work fine too, since nothing here needs a GPU — every step is just an API call to a free-tier LLM. A real, runnable notebook version of this project lives in the repo at [`examples/multi-agent-research/notebook.ipynb`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/multi-agent-research/notebook.ipynb) — click a badge below to launch it with zero local setup, no `.env` file needed (it asks for your API key interactively with `getpass` instead): -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/multi-agent-research/notebook.ipynb) [![Open in Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/multi-agent-research/notebook.ipynb) diff --git a/docs/projects/recipe-planner-agent/index.md b/docs/projects/recipe-planner-agent/index.md index b2917c7..b461b8e 100644 --- a/docs/projects/recipe-planner-agent/index.md +++ b/docs/projects/recipe-planner-agent/index.md @@ -37,7 +37,6 @@ This assumes Python 101. Having done the [AI Agent project](/docs/projects/ai-ag **Google Colab, Kaggle Notebooks, or Binder** are fine too — this is a lightweight script that just calls an API, no GPU or heavy install involved. A ready-to-run notebook version of this project ([`examples/recipe-planner-agent/notebook.ipynb`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/recipe-planner-agent/notebook.ipynb)) is one click away: -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/recipe-planner-agent/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/recipe-planner-agent/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Frecipe-planner-agent%2Fnotebook.ipynb) diff --git a/docs/projects/study-buddy-agent/index.md b/docs/projects/study-buddy-agent/index.md index 9f740df..292f0d9 100644 --- a/docs/projects/study-buddy-agent/index.md +++ b/docs/projects/study-buddy-agent/index.md @@ -37,7 +37,6 @@ This is optional and ungraded — a good fit once you've finished Python 101; no **Google Colab, Kaggle Notebooks, or Binder** work fine too — this project is just a terminal script that calls a hosted API, no GPU or heavy local package involved. A ready-to-run notebook version lives at [`examples/study-buddy-agent/notebook.ipynb`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/study-buddy-agent/notebook.ipynb) — it mirrors the same `generate_questions()` / `judge_answer()` / `run_quiz()` logic, uses `input()` in a cell the same way you would in a terminal, and embeds one of the sample notes files directly so it runs with no file upload needed. Launch it with one of the badges below: -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/study-buddy-agent/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/study-buddy-agent/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Fstudy-buddy-agent%2Fnotebook.ipynb) diff --git a/docs/projects/trivia-bot/index.md b/docs/projects/trivia-bot/index.md index 5920c9b..39befaa 100644 --- a/docs/projects/trivia-bot/index.md +++ b/docs/projects/trivia-bot/index.md @@ -43,7 +43,6 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the That said, question generation and scoring *underneath* the bot are just regular functions that run a cell at a time, which is exactly what notebooks are good at. The badges below open a notebook that generates real LLM questions on a few sample topics and runs a few fake "players" through the scoring logic, so you can see both work without installing anything locally. It deliberately stops short of the Discord layer — for that, come back here and run `bot.py` locally or in Codespaces as described above. -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/trivia-bot/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/trivia-bot/notebook.ipynb) diff --git a/docs/projects/voice-to-task-agent/index.md b/docs/projects/voice-to-task-agent/index.md index aca8fc8..c6fc94c 100644 --- a/docs/projects/voice-to-task-agent/index.md +++ b/docs/projects/voice-to-task-agent/index.md @@ -33,7 +33,6 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the **GitHub Codespaces** works too: open [the whole course repo in a free Codespace](https://codespaces.new/abderrahim-lectures/python-data-analysis-course) (Node, Python, and `uv` are already installed) and run the exact same `uv` commands from a terminal in your browser tab. It's a bit slower than a modern laptop for the transcription step, since Codespaces machines are CPU-only, but perfectly workable for the short sample clips here. -{/* TODO: update these badge links to point at main once this PR merges */} [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/voice-to-task-agent/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/voice-to-task-agent/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Fvoice-to-task-agent%2Fnotebook.ipynb) diff --git a/docs/projects/webcam-object-counter/index.md b/docs/projects/webcam-object-counter/index.md index db49d0d..dd52338 100644 --- a/docs/projects/webcam-object-counter/index.md +++ b/docs/projects/webcam-object-counter/index.md @@ -34,7 +34,7 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the **Locally with `uv` is the only way to get the full, live-webcam experience.** A physical webcam attached to your computer is hardware — there is no route from a browser tab running in the cloud to a camera sitting on your desk. Steps 1–5 below assume this path, and Step 5 specifically will simply not work anywhere else. - **GitHub Codespaces** gets you a zero-setup cloud dev environment (Node, Python, and `uv` already installed — see [`.devcontainer/devcontainer.json`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/.devcontainer/devcontainer.json)), and Steps 1–4 (sample image, counting, sample video) work fine there. Step 5 will not — a Codespace runs on a remote server with no access to your local webcam either. -- **Google Colab, Kaggle Notebooks, or Binder** are good for the **sample-image-only** variant of this project, not the live webcam. A real, runnable notebook that downloads the bundled sample images and runs the same detection code lives at [`examples/webcam-object-counter/notebook.ipynb`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/webcam-object-counter/notebook.ipynb) (will point at `main` once merged). Click a badge to launch it directly: +- **Google Colab, Kaggle Notebooks, or Binder** are good for the **sample-image-only** variant of this project, not the live webcam. A real, runnable notebook that downloads the bundled sample images and runs the same detection code lives at [`examples/webcam-object-counter/notebook.ipynb`](https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/webcam-object-counter/notebook.ipynb). Click a badge to launch it directly: [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/abderrahim-lectures/python-data-analysis-course/blob/main/examples/webcam-object-counter/notebook.ipynb) [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/webcam-object-counter/notebook.ipynb) diff --git a/docs/projects/wordle-clone/index.md b/docs/projects/wordle-clone/index.md index c2f434a..0c1d937 100644 --- a/docs/projects/wordle-clone/index.md +++ b/docs/projects/wordle-clone/index.md @@ -38,8 +38,6 @@ This is optional and ungraded. See [Real-World Projects](/docs/projects) for the [![Open In Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/abderrahim-lectures/python-data-analysis-course/blob/main/examples/wordle-clone/notebook.ipynb) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/abderrahim-lectures/python-data-analysis-course/main?filepath=examples%2Fwordle-clone%2Fnotebook.ipynb) - {/* Badges point at this PR's branch; will point at `main` once merged. */} - ## Setup `uv` is a single tool that replaces the usual "install Python, then install pip, then install a virtual environment tool, then install packages" chain — it can install and manage Python versions itself, alongside your project's dependencies.