A GitHub Action that automatically summarizes pull requests and adds a random programming joke to make code reviews more enjoyable.
- 📝 PR Change Analysis: Detects modified, added, and deleted files
- 📊 Summary Generation: Converts PR changes into short, meaningful descriptions
- 💬 GitHub Commenting: Posts the summary as a comment on the PR
- 😄 Random Jokes: Fetches and appends a programming joke to the comment
- 🔄 External Repository Support: Can be used across multiple GitHub repositories
🚀 PR Summary
📝 Changes Overview
✨ Implement user authentication system
✅ Added JWT token generation and validation
✅ Created user registration endpoint
🧪 Added tests for auth endpoints
📚 Updated API documentation
📂 Affected Files
🟢 [+] src/auth/jwt.rs
🟢 [+] src/auth/middleware.rs
🔵 [M] src/routes/users.rs
🔵 [M] src/models/user.rs
🟢 [+] tests/auth_tests.rs
🔵 [M] README.md
😄 Code Humor
Why do programmers prefer dark mode? Because light attracts bugs! 🤓
This summary was automatically generated by PR Summarizer ⚡
Add this to your repository's .github/workflows/pr-summary.yml
:
name: PR Summarizer
on:
pull_request:
types: [opened, synchronize, reopened]
permissions:
pull-requests: write # Required to comment on PRs
issues: write # Required for PR comments via issues API
jobs:
summarize:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0 # Ensures full history for diff analysis
- name: Run PR Summarizer
uses: bansikah22/[email protected] # Uses the lastest actions tag
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
You can also visit test repositories Test PR Summarizer so see how it works on external repositories.
- When a pull request is opened or updated, the action is triggered
- It analyzes the changes made in the PR
- It generates a concise summary of the changes
- It fetches a programming joke from several APIs
- It posts a comment on the PR with the summary and joke
- Rust 1.83.+
- Cargo
cargo build --release
You can alos make use of the ci-local.sh file to simulate ci locally
We appreciate the efforts of all contributors who help improve this project.
Contributor | Role |
---|---|
Noel Bansikah | Author & Maintainer |
Synk | Maintainer |
Christian Yamele | Rust Developer |
Contributions are welcomed! 🎉 Feel free to submit issues, feature requests, or pull requests to help enhance this project.
MIT License