Docs cleanup: MIT license, accurate root README, human-toned project READMEs - #24
Conversation
The repository is meant to be open source under MIT but had no license file, so the license was legally unenforceable. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The old README still described the repo as NFC-Projects, listed folders that no longer exist (PhoneBook-HashTable), omitted most of the actual projects, and pointed the clone URL at the wrong repo. Replaced it with a short accurate project index, correct clone URL, a license section, and a note that AI assistance was used. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The workflow only triggered on pull requests while the README said it runs on every push; added the push trigger. Bumped checkout to v4 and setup-python to v5, and dropped end-of-life Python 3.8/3.9 from the matrix. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 145 to ~50 lines. Fixed inaccuracies: GPT answers are saved to numbered gpt_N.txt files (not a single gpt.txt), all query words must match, and an API key is required at startup. Dropped the emoji checkmark walls, the long example session, and the future-work list. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 159 to ~53 lines, verified against controller.py and smart_light_server.py. Kept the description, setup commands, demo link, and course/author credits; dropped the emoji-heavy marketing tone. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 155 to ~51 lines. Fixed the wrong folder layout and added the missing customtkinter dependency (verified against main.py's actual imports). Kept per-module explanation and team credits. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 105 to ~44 lines. Corrected the model description (Random Forest + Linear Regression, not Ridge), the generated dataset size (30 students, not 60), and removed the unverifiable ~91% accuracy claim and a placeholder clone URL. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Kept accurate setup, database import order, run instructions, ports, and default login. Cut the full project tree dump, API endpoint tables, 12-table schema table, and screenshots placeholder — detail that belongs in the code and docs/ folder, not the README. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 130 to ~67 lines. Kept the concurrency model, config, and build/run steps (added a Linux/macOS equivalent to the PowerShell commands); dropped emoji headings and a stale file listing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Cut from 135 to ~67 lines. Pin mapping, AP credentials, and control flow now match the actual sketch and interface files. Kept team credits and links. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The old README listed code files that don't exist in the folder — it currently contains only the project proposal PDF. The README now says so honestly instead of documenting phantom code. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The old README described an Arduino UNO + main.asm + SIM900A setup; the code is an ESP8266 sketch (assembly/esp.c++) with a 33 °C threshold, GSM AT-command alerts, and a web dashboard. Kept course, instructor, and team credits. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Corrected the manage.py path (backend/backend/sfs_backend), removed a setup step for a nonexistent .env.example, and deleted a duplicated Vercel/Netlify/Gemini marketing section that didn't match the Django backend. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Muawiya-contact
left a comment
There was a problem hiding this comment.
Inline notes on each change in this docs cleanup pass — one comment per file explaining what was fixed and why.
| @@ -0,0 +1,21 @@ | |||
| MIT License | |||
There was a problem hiding this comment.
New file. The repo was described as MIT/open source but had no license file anywhere, which means it effectively wasn't open source — without a license text, nobody has legal permission to reuse the code. Standard MIT text, copyright 2024–2026 to match the degree timeline.
| @@ -1,94 +1,38 @@ | |||
| # NFC Projects — BS Artificial Intelligence Journey | |||
| # BSAI Projects | |||
There was a problem hiding this comment.
Full rewrite. The old README was stale on four counts: it still called the repo NFC-Projects, listed a PhoneBook-HashTable/ folder that doesn't exist, omitted 8 of the 10 actual projects, and the clone URL pointed at Muawiya-contact/NFC-Projects instead of this repo. Now: accurate 10-project index with verified one-line descriptions, correct clone URL, license section, and an honest note that AI assistance was used.
| name: Python Syntax Check | ||
|
|
||
| on: | ||
| push: |
There was a problem hiding this comment.
Added the push trigger. The workflow only ran on pull requests, while the root README claimed syntax checks run on every push — direct pushes to main were never checked. Also bumped actions/checkout v3→v4 and setup-python v4→v5, and dropped Python 3.8/3.9 from the matrix (both past end-of-life). Verified py_compile passes over every .py file in the current tree.
| @@ -1,146 +1,51 @@ | |||
| # 🔍 Mini Search Engine with Stack | |||
| # Mini Search Engine with Stack | |||
There was a problem hiding this comment.
Trimmed 145 → ~50 lines and fixed stale claims: GPT answers are saved to numbered gpt_N.txt files (not a single gpt.txt), matching requires all query words, and the OpenAI API key is required at startup. Dropped the emoji/checkmark walls, the 40-line example session, and the future-improvements list.
| @@ -1,158 +1,57 @@ | |||
| # 🏠 Smart Home Simulator 🔦 | Powered by Python OOP + Flask + IoT | |||
| # Smart Home Simulator | |||
There was a problem hiding this comment.
Trimmed 159 → ~53 lines, verified against controller.py and smart_light_server.py. Kept the description, setup commands, demo link, and course/author credits; dropped the marketing tone ("creative and fully functional") and emoji headers.
| @@ -1,129 +1,67 @@ | |||
| # CloudKernel | |||
There was a problem hiding this comment.
Trimmed 130 → ~67 lines. Kept the concurrency model, config, and build/run steps, and added Linux/macOS equivalents next to the PowerShell-only commands. Dropped emoji headings and a stale file listing.
| @@ -1,135 +1,67 @@ | |||
| # CodingMoves-RC+ | |||
There was a problem hiding this comment.
Verified against the sketch: pin mapping, AP credentials, and control flow now come from the actual .ino/interface files rather than the generic text. Team credits and links kept. 135 → ~67 lines.
| @@ -1,130 +1,34 @@ | |||
| # IoT Intrusion Detection System (Information Security Project) | |||
| # IoT Intrusion Detection System | |||
There was a problem hiding this comment.
Honesty fix. The old README documented code files (ids.py etc.) that don't exist in this folder — it only contains the project proposal PDF. The README now describes what's actually here instead of phantom code, so nobody clones it expecting a runnable IDS.
| - [📧 Email](mailto:contactmuawia@gmail.com) | ||
|
|
||
| --- No newline at end of file | ||
| # ResQTemp |
There was a problem hiding this comment.
Rewritten to match the actual hardware. The old README described an Arduino UNO + main.asm + SIM900A setup; the code in assembly/esp.c++ targets an ESP8266 with a 33 °C threshold, GSM AT-command alerts, and a web dashboard. Course, instructor, and team credits kept.
| @@ -1,140 +1,63 @@ | |||
|
|
|||
| # Secure File System (SFS) | |||
There was a problem hiding this comment.
Fixed broken setup instructions: manage.py actually lives under backend/backend/sfs_backend, and the .env.example step referenced a file that doesn't exist. Also deleted a duplicated Vercel/Netlify/Gemini marketing section that didn't match this Django + DRF backend at all.
Summary
Documentation review pass across the whole repo. Every change is its own commit so each can be reviewed (or reverted) independently — 13 commits total.
Changes, one per commit
actions/checkoutto v4 andsetup-pythonto v5, and dropped end-of-life Python 3.8/3.9 from the matrix. Verified the check passes locally against the current tree.gpt_N.txtfiles, all query words must match, API key required at startup).controller.pyandsmart_light_server.py.customtkinterdependency.manage.pypath, removed a step referencing a nonexistent.env.example, deleted a duplicated marketing section that didn't match the Django backend.Style applied throughout
Verification
python -m py_compileover every.pyfile passes locally (same check as CI).🤖 Generated with Claude Code