pr-template-generator

from curiouslearner/devkit

Comprehensive development toolkit: 52 professional skills for Claude Code across development, code quality, API, database, security, DevOps, data analytics, and collaboration

19 stars4 forksUpdated Oct 20, 2025
npx skills add https://github.com/curiouslearner/devkit --skill pr-template-generator

SKILL.md

PR Template Generator Skill

Generate comprehensive pull request descriptions that help reviewers understand changes quickly and improve team collaboration.

Instructions

You are a pull request documentation expert. When invoked:

  1. Analyze Changes:

    • Review git diff and commit history
    • Identify type of changes (feature, bugfix, refactor, etc.)
    • Understand the scope and impact
    • Detect breaking changes
    • Identify affected components
  2. Generate PR Description:

    • Clear, concise title following conventions
    • Comprehensive summary of changes
    • Motivation and context
    • Technical approach and decisions
    • Testing strategy
    • Deployment considerations
  3. Include Checklist:

    • Pre-merge requirements
    • Testing verification
    • Documentation updates
    • Breaking change warnings
    • Migration steps if needed
  4. Add Metadata:

    • Related issues and tickets
    • Type labels (feature, bugfix, etc.)
    • Priority and urgency
    • Required reviewers
    • Estimated review time
  5. Communication Tips:

    • Use clear, non-technical language where possible
    • Highlight reviewer focus areas
    • Include screenshots/recordings for UI changes
    • Link to relevant documentation
    • Explain trade-offs and alternatives considered

PR Title Conventions

Format Patterns

# Conventional Commits Style
feat: Add user profile page
fix: Resolve login redirect issue
refactor: Simplify authentication logic
docs: Update API documentation
test: Add integration tests for checkout
chore: Update dependencies
perf: Optimize database queries
style: Fix linting issues

# With Scope
feat(auth): Add OAuth2 provider support
fix(api): Handle null responses correctly
refactor(database): Migrate to connection pooling

# With Ticket Reference
feat: Add export functionality [JIRA-123]
fix: Memory leak in websocket handler (#456)

# Breaking Changes
feat!: Migrate to v2 API endpoints
refactor!: Remove deprecated methods

Title Best Practices

āœ… GOOD Titles:
- feat: Add real-time notification system
- fix: Prevent duplicate order submissions
- refactor: Extract payment processing logic
- perf: Reduce initial page load time by 40%

āŒ BAD Titles:
- Update code
- Fix bug
- Changes
- WIP
- asdfasdf

PR Description Templates

Feature Addition Template

## Summary

This PR adds a comprehensive notification system that allows users to receive real-time updates about order status, messages, and system alerts.

## Motivation

**Problem**: Users currently have no way to receive updates about important events without refreshing the page or checking email. This leads to delayed responses and poor user experience.

**Solution**: Implement a WebSocket-based notification system with persistent storage, allowing users to:
- Receive real-time notifications
- View notification history
- Mark notifications as read
- Configure notification preferences

## Changes

### Added
- WebSocket server for real-time notifications (`src/websocket/`)
- Notification service and database schema (`src/models/Notification.js`)
- Frontend notification component with toast UI
- User notification preferences page
- Email fallback for offline users

### Modified
- Updated `User` model to include notification settings
- Enhanced authentication middleware to support WebSocket connections
- Modified dashboard to display notification bell icon

### Removed
- Old polling-based notification checker (deprecated)

## Technical Details

### Architecture

Client (React) <--WebSocket--> Server (Node.js) <--> Redis Pub/Sub <--> Database


### Key Implementation Decisions
1. **WebSocket vs. Server-Sent Events**: Chose WebSocket for bidirectional communication
2. **Redis Pub/Sub**: Enables horizontal scaling across multiple server instances
3. **Persistent Storage**: MongoDB for notification history (7-day retention)
4. **Email Fallback**: Queue-based email notifications for offline users

### Database Schema
```javascript
{
  userId: ObjectId,
  type: String,           // 'order', 'message', 'system'
  title: String,
  message: String,
  data: Object,           // Type-specific payload
  read: Boolean,
  createdAt: Date,
  expiresAt: Date        // TTL index for auto-cleanup
}

Testing

Unit Tests

  • Notification service (create, mark read, delete)
  • WebSocket connection handling
  • User preferences validation
  • Email fallback queue

Integration Tests

  • End-to-end notification flow
  • Real-time delivery verification
  • Reconnection after disconnect
  • Multi-device synchronization

Manual Testing

  • Tested in Chrome, Firefox, Safari
  • Mobile responsiveness verified
  • Tested with 100+ concurrent connections
  • Verified email fallback with offline users

Screenshots

Notification Toast

Notification Toast

Notification Center

![Notification Center](https://example.com/scree

...

Read full content

Repository Stats

Stars19
Forks4
LicenseMIT License