Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: Bug Report
about: Report a bug or issue
title: '[BUG] '
labels: bug
assignees: ''
---

## 🐛 Bug Description
A clear and concise description of what the bug is.

## 📋 Steps to Reproduce
1. Go to '...'
2. Click on '...'
3. See error

## ✅ Expected Behavior
What you expected to happen.

## ❌ Actual Behavior
What actually happened.

## 🖼️ Screenshots
If applicable, add screenshots to help explain your problem.

## 🌍 Environment
- OS: [e.g. Windows, macOS, Linux]
- Version: [e.g. 1.0.0]
- Other relevant details

## 📝 Additional Context
Add any other context about the problem here.

## ✔️ Before Submitting
- [ ] I've searched existing issues to avoid duplicates
- [ ] I've provided clear steps to reproduce
- [ ] I've included relevant environment details
39 changes: 39 additions & 0 deletions .github/ISSUE_TEMPLATE/cleanup_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
name: Cleanup Request
about: Report clutter, unused code, or organization issues
title: '[CLEANUP] '
labels: cleanup, maintenance
assignees: ''
---

## 🧹 Cleanup Description
What needs to be cleaned up or reorganized?

## 📍 Location
Where in the repository is the issue?
- Path:
- Files/directories affected:

## 🔍 Issue Type
- [ ] Backup files (*.bak, *.old, etc.)
- [ ] Temporary files
- [ ] Unused/dead code
- [ ] Disorganized structure
- [ ] Outdated documentation
- [ ] Other (describe below)

## 💡 Suggested Action
How should this be addressed?

## 📊 Impact
- [ ] Low - Minor cleanup
- [ ] Medium - Affects repository organization
- [ ] High - Significant clutter or disorganization

## 📝 Additional Details
Any other information about the cleanup needed.

## ✔️ Before Submitting
- [ ] I've verified this is actually clutter/needs cleanup
- [ ] I've provided specific location information
- [ ] I've suggested how to address it
30 changes: 30 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
name: Feature Request
about: Suggest a new feature or enhancement
title: '[FEATURE] '
labels: enhancement
assignees: ''
---

## 🚀 Feature Description
A clear and concise description of the feature you'd like to see.

## 🎯 Problem/Motivation
What problem does this feature solve? Why is it needed?

## 💡 Proposed Solution
How would you like this feature to work?

## 🔄 Alternatives Considered
Have you considered any alternative solutions or features?

## 📊 Impact
Who will benefit from this feature? How will it improve the project?

## 📝 Additional Context
Add any other context, mockups, or examples about the feature request.

## ✔️ Before Submitting
- [ ] I've searched existing issues to avoid duplicates
- [ ] This feature aligns with the project's goals
- [ ] I've clearly described the problem and solution
95 changes: 95 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
## 📋 Pull Request Description

### What does this PR do?
<!-- Clearly describe what changes this PR introduces -->

### Why is this change needed?
<!-- Explain the motivation behind these changes -->

### Related Issues
<!-- Link any related issues: Fixes #123, Relates to #456 -->

## 🧪 Testing

### How has this been tested?
<!-- Describe the testing you've done -->
- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing completed
- [ ] All tests pass

### Test Coverage
<!-- If applicable, mention test coverage -->

## 🧹 Cleanliness Checklist

**CRITICAL**: Ensure your PR maintains repository cleanliness standards

- [ ] **No backup files** (*.bak, *.old, *.backup, etc.)
- [ ] **No temporary files** (*.tmp, temp/, tmp/)
- [ ] **No commented-out code** (delete, don't comment)
- [ ] **No debug statements** (console.log, print, etc.)
- [ ] **No unused imports** or variables
- [ ] **No personal IDE configs** (.vscode/, .idea/, etc.)
- [ ] **No build artifacts** (dist/, build/, compiled files)
- [ ] **No sensitive data** (keys, tokens, passwords)
- [ ] **All files in correct directories** (src/, tests/, docs/, etc.)

## 📝 Code Quality Checklist

- [ ] Code follows project style guidelines
- [ ] Functions/methods are documented
- [ ] Complex logic has explanatory comments
- [ ] Error handling is appropriate
- [ ] Code is DRY (Don't Repeat Yourself)

## 📚 Documentation

- [ ] README updated (if needed)
- [ ] Documentation added/updated for new features
- [ ] Examples added/updated (if applicable)
- [ ] CHANGELOG updated (if applicable)

## 🔍 Review Checklist

Before requesting review, ensure:

- [ ] Self-reviewed all changes
- [ ] Commit messages are clear and descriptive
- [ ] Branch is up to date with main
- [ ] No merge conflicts
- [ ] CI/CD checks pass (if applicable)

## 📊 Impact Assessment

### Breaking Changes
- [ ] This PR includes breaking changes
- [ ] Migration guide provided (if breaking changes)

### Performance Impact
<!-- Describe any performance implications -->

### Security Considerations
<!-- Note any security-related changes or considerations -->

## 📸 Screenshots/Recordings
<!-- If applicable, add screenshots or recordings of the changes -->

## 💬 Additional Notes
<!-- Any other information reviewers should know -->

---

## ✅ Final Confirmation

By submitting this PR, I confirm that:

- [ ] I have read and followed the [CONTRIBUTING.md](../CONTRIBUTING.md) guidelines
- [ ] I have read and accept the [CODE_OF_CONDUCT.md](../CODE_OF_CONDUCT.md)
- [ ] My code is clean, tested, and ready for review
- [ ] I have removed all clutter, backup, and temporary files
- [ ] This PR maintains the high standards of the ProSe repository

---

**Ready for review!** 🚀
29 changes: 29 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: ProSe CI

on: [push, pull_request]

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Lint with flake8
run: |
pip install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings.
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Run tests
run: |
# Placeholder for running tests
# python -m pytest
echo "No tests to run yet"
123 changes: 123 additions & 0 deletions .github/workflows/cleanliness-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
name: Repository Cleanliness Check

on:
pull_request:
branches: [ main ]
push:
branches: [ main ]
workflow_dispatch:

jobs:
cleanliness-check:
runs-on: ubuntu-latest
name: Check for Clutter and Repository Health

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Check for backup files
run: |
echo "🔍 Checking for backup files..."
BACKUP_FILES=$(find . -type f \( -name "*.bak" -o -name "*.old" -o -name "*.backup" -o -name "*~" \) ! -path "./.git/*" || true)
if [ -n "$BACKUP_FILES" ]; then
echo "❌ Found backup files:"
echo "$BACKUP_FILES"
exit 1
else
echo "✅ No backup files found"
fi

- name: Check for temporary files
run: |
echo "🔍 Checking for temporary files..."
TEMP_FILES=$(find . -type f \( -name "*.tmp" -o -name "*.temp" \) ! -path "./.git/*" || true)
if [ -n "$TEMP_FILES" ]; then
echo "❌ Found temporary files:"
echo "$TEMP_FILES"
exit 1
else
echo "✅ No temporary files found"
fi

- name: Check for OS-generated files
run: |
echo "🔍 Checking for OS-generated files..."
OS_FILES=$(find . -type f \( -name ".DS_Store" -o -name "Thumbs.db" -o -name "desktop.ini" \) ! -path "./.git/*" || true)
if [ -n "$OS_FILES" ]; then
echo "❌ Found OS-generated files:"
echo "$OS_FILES"
exit 1
else
echo "✅ No OS-generated files found"
fi

- name: Check for IDE configuration files
run: |
echo "🔍 Checking for IDE configuration directories..."
IDE_CONFIGS=$(find . -type d \( -name ".vscode" -o -name ".idea" \) ! -path "./.git/*" || true)
if [ -n "$IDE_CONFIGS" ]; then
echo "⚠️ Warning: Found IDE configuration directories:"
echo "$IDE_CONFIGS"
echo "These should typically be in .gitignore"
# Not failing on this, just warning
else
echo "✅ No IDE configuration directories found"
fi

- name: Check for backup directories
run: |
echo "🔍 Checking for backup directories..."
BACKUP_DIRS=$(find . -type d \( -name "backup" -o -name "backups" -o -name "old" -o -name "_old" \) ! -path "./.git/*" || true)
if [ -n "$BACKUP_DIRS" ]; then
echo "❌ Found backup directories:"
echo "$BACKUP_DIRS"
exit 1
else
echo "✅ No backup directories found"
fi

- name: Run repository health audit
run: |
echo "🏥 Running repository health audit..."
chmod +x scripts/audit.sh
bash scripts/audit.sh || true

- name: Check repository structure
run: |
echo "📁 Checking repository structure..."

# Check essential directories exist
for dir in "src" "tests" "docs" "examples" "scripts"; do
if [ -d "$dir" ]; then
echo "✅ $dir/ exists"
else
echo "⚠️ Warning: $dir/ directory missing"
fi
done

# Check essential files exist
for file in "README.md" ".gitignore" "CONTRIBUTING.md" "CODE_OF_CONDUCT.md"; do
if [ -f "$file" ]; then
echo "✅ $file exists"
else
echo "❌ $file missing"
exit 1
fi
done

- name: Summary
run: |
echo ""
echo "================================="
echo "✅ Repository cleanliness check passed!"
echo "================================="
echo ""
echo "This repository maintains high standards:"
echo " ✓ No backup files"
echo " ✓ No temporary files"
echo " ✓ No OS-generated clutter"
echo " ✓ Proper directory structure"
echo " ✓ All essential files present"
echo ""
echo "Keep up the great work! 🎉"
Loading