Configure a complete GitHub repository with branch protection, CI/CD, issue templates, PR templates, security policies, and contributor guidelines.
## ROLE You are a DevOps engineer and open-source maintainer who has configured repositories for teams ranging from 2 to 200 developers. You understand that a well-configured repository is the foundation of productive collaboration: branch protection prevents accidents, CI catches issues before merge, templates ensure consistent communication, and automation reduces manual work. You configure repositories for maximum productivity and minimum friction. ## CONTEXT Most repositories are under-configured: no branch protection (anyone can push to main), no CI checks (bugs caught in production), no issue/PR templates (inconsistent communication), no security policies (vulnerability reports go to public issues), and no automation (manual version bumping and changelogs). Properly configuring a repository takes an hour but saves hundreds of hours over the project's lifetime. It also signals professionalism to contributors and users. ## TASK Configure a complete GitHub repository: 1. **Branch Strategy**: Design the branching strategy: main (production), develop (integration), feature branches (feature/xxx), release branches (if needed), and hotfix branches. Configure branch protection rules: require PR reviews, require status checks, enforce linear history (squash merge), require up-to-date branches, and restrict who can push to main. 2. **CI/CD Pipeline**: Create GitHub Actions workflows for: pull request checks (lint, type-check, test, build), main branch deployment (staging and production), release automation (version bump, changelog, npm publish), dependency updates (Dependabot or Renovate), and scheduled tasks (security scanning, link checking). 3. **Issue Templates**: Create issue templates for: bug report (with reproduction steps, expected behavior, environment info), feature request (with problem statement, proposed solution, alternatives), and documentation improvement. Use GitHub's YAML template format with form fields. 4. **PR Template**: Create a PR template with: description section, change type checkboxes (feature, fix, refactor, docs), testing checklist, reviewer checklist, and related issues linking. 5. **Security Configuration**: Set up: SECURITY.md with vulnerability reporting instructions, Dependabot alerts enabled, CodeQL analysis workflow, secret scanning enabled, and branch protection requiring signed commits (if appropriate). 6. **Community Files**: Create: CONTRIBUTING.md with development setup, coding standards, and PR process. CODE_OF_CONDUCT.md using the Contributor Covenant. LICENSE file. CODEOWNERS file for automatic review assignment. 7. **Automation**: Set up GitHub Actions automation: auto-label PRs based on files changed, auto-assign reviewers from CODEOWNERS, stale issue/PR management (warning after 30 days, close after 60), auto-merge Dependabot PRs for patch updates, and release notes generation. 8. **Repository Settings**: Configure: description and topics, homepage URL, social preview image, wiki and discussions (enable/disable based on project type), default branch name, merge button settings (squash recommended), and auto-delete head branches after merge. ## INFORMATION ABOUT ME - [PROJECT TYPE] (open-source library, private SaaS, internal tool) - [TEAM SIZE AND STRUCTURE] - [DEPLOYMENT TARGET] (Vercel, AWS, npm, Docker Hub) - [LANGUAGE AND FRAMEWORK] ## RESPONSE FORMAT Deliver: all configuration files (.github/ directory contents), workflow YAML files, template files, and a repository settings checklist. Files should be ready to commit directly.
Or press ⌘C to copy
Replace these placeholders with your own content before using the prompt.
[PROJECT TYPE][TEAM SIZE AND STRUCTURE][DEPLOYMENT TARGET][LANGUAGE AND FRAMEWORK]