diff --git a/fetch_commits.py b/fetch_commits.py new file mode 100644 index 00000000..e2c0ee76 --- /dev/null +++ b/fetch_commits.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python3 +import requests +import json + +# List of OWASP repos +repos = [ + "OWASP/OWASP-Top-10", + "OWASP/ASVS", + "OWASP/wstg", + "OWASP/CheatSheetSeries", + "OWASP/owasp-masvs", + "OWASP/owasp-mstg", + "OWASP/owasp-api-security", + "OWASP/owasp-testing-guide-v4", + "OWASP/owasp-testing-guide-v5", + "OWASP/owasp-zap" +] + +# Preserve order while preventing accidental duplicates. +repos = list(dict.fromkeys(repos)) + +commits = [] + +for repo in repos: + try: + url = f"https://api.github.com/repos/{repo}/commits?per_page=10" + response = requests.get(url) + if response.status_code == 200: + data = response.json() + for commit in data: + message = commit['commit']['message'] + commits.append(message) + if len(commits) >= 100: + break + if len(commits) >= 100: + break + except Exception: + pass + +# Save to file +with open('commits.json', 'w') as f: + json.dump(commits[:100], f, indent=2) + +print(f"Collected {len(commits[:100])} commits") diff --git a/review_prototype.html b/review_prototype.html new file mode 100644 index 00000000..c84bde74 --- /dev/null +++ b/review_prototype.html @@ -0,0 +1,24 @@ + + + + Review UI Prototype + + +

Content Review

+

Sample content to review

+ + + + +