repository-pro

Create professional, well-structured GitHub repositories with industry best practices. Use when: (1) Creating new GitHub repositories, (2) Setting up repository structure, (3) Adding essential files (README, LICENSE, .gitignore), (4) Configuring CI/CD workflows, (5) Setting up contribution guidelines, (6) Adding issue/PR templates, (7) Configuring branch protection rules, (8) Setting description and topics for discoverability, (9) Identifying tech stack and applying appropriate templates (React, Next.js, Django, FastAPI, Go, MERN, T3, etc.)

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "repository-pro" with this command: npx skills add ev3lynx727/repository-pro/ev3lynx727-repository-pro-repository-pro

Repository Pro

Create production-ready GitHub repositories with professional structure and best practices.

Core Principles

  1. Every repo needs a README - First thing users see, explains project purpose and usage
  2. License matters - Define open source terms from day one
  3. .gitignore from start - Avoid committing sensitive files
  4. CI/CD from day one - Automated testing and checks
  5. Contribution clarity - Guidelines for collaborators
  6. Issue templates - Standardize bug reports and feature requests
  7. Security scanning - Enable Dependabot, code scanning

Repository Structure

Universal Files (Every Project)

├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   └── workflows/
│       └── ci.yml
├── .gitignore
├── LICENSE
├── README.md
└── CONTRIBUTING.md

Language-Specific Structure

Node.js/TypeScript:

├── src/
├── test/
├── package.json
├── tsconfig.json
├── .eslintrc.json
├── .prettierrc
└── jest.config.js

Python:

├── src/
├── tests/
├── pyproject.toml
├── setup.py
├── .flake8
├── mypy.ini
└── requirements.txt

Go:

├── cmd/
├── pkg/
├── internal/
├── go.mod
├── .golangci.yml
└── Makefile

Essential Files

README.md Structure

# Project Name

Brief description (1-2 sentences)

[![CI](badge-url)](link)
[![License](badge-url)](link)
[![Version](badge-url)](link)

## Features

- Feature 1
- Feature 2

## Quick Start

\`\`\`bash
# Installation
npm install package-name
\`\`\`

## Usage

\`\`\`javascript
const example = require('package-name');
\`\`\`

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md)

## License

MIT License - see [LICENSE](LICENSE)

.gitignore Templates

Use appropriate template from github/gitignore

CONTRIBUTING.md

# Contributing

## Getting Started

1. Fork the repository
2. Clone your fork
3. Create a feature branch

## Development

\`\`\`bash
# Install dependencies
npm install

# Run tests
npm test
\`\`\`

## Pull Request Process

1. Update documentation
2. Add tests for new features
3. Ensure all tests pass
4. Update CHANGELOG.md

## Code Style

- Use consistent formatting
- Write meaningful commit messages
- Follow existing code patterns

Issue Templates

Bug Report:

---
name: Bug Report
about: Create a report to help us improve
---

## Description
Clear description of the bug

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

## Expected Behavior
What you expected to happen

## Actual Behavior
What actually happened

## Environment
- OS: [e.g., macOS]
- Version: [e.g., 1.0.0]

Feature Request:

---
name: Feature Request
about: Suggest an idea for this project
---

## Problem
What problem does this solve?

## Proposed Solution
Your proposed solution

## Alternatives
Other solutions considered

CI/CD Workflows

Basic CI Workflow

name: CI

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

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Use Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm ci
      - run: npm test

Node.js with Coverage

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: 'npm'
      - run: npm ci
      - run: npm test -- --coverage
      - uses: codecov/codecov-action@v4

Repository Metadata

Description Best Practices

A good GitHub description:

  • Max 160 characters - Displayed in search results
  • Starts with action verb - "A", "An", "Build", "Create", "Simple"
  • Explains what it does - Not just "parser" but "parses JSON into TypeScript types"
  • Includes primary benefit - What problem does it solve?
TypeTemplateExample
Library"A [language] library for [action]""A Python library for building CLI applications"
CLI"CLI tool to [action]""CLI tool to convert video to GIF"
Web App"[What] built with [framework]""Task manager built with React and Node.js"
API"REST API for [domain]""REST API for managing todo lists"
Config"[Name] config for [purpose]""Docker configs for Node.js microservices"

Topics Best Practices

GitHub topics help with discoverability:

  • Use lowercase - machine-learning, not Machine-Learning
  • Max 20 topics - GitHub limit
  • Include ecosystem - react, python, golang
  • Include category - cli, api, library, tool
  • Add status - beta, stable, deprecated
  • Include type - starter-template, boilerplate

Recommended Topic Categories

CategoryTopics
Languagejavascript, typescript, python, go, rust, java, kotlin
Frameworkreact, vue, angular, nextjs, django, fastapi, express
Typelibrary, cli, api, webapp, boilerplate, starter-template
Purposeautomation, machine-learning, data-visualization, security
Featuresgraphql, rest-api, websocket, serverless, docker

See references/topics.md for comprehensive topic lists by project type.

Branch Protection Rules

For main branch:

  • Require pull request reviews (1-2 reviewers)
  • Require status checks to pass
  • Require branches to be up to date
  • Include administrators in protections

Dependabot Configuration

version: 2
updates:
  - package-ecosystem: npm
    directory: /
    schedule:
      interval: weekly
  - package-ecosystem: github-actions
    directory: /
    schedule:
      interval: weekly

Repository Creation Workflow

  1. Plan metadata - Write description (max 160 chars) and select relevant topics
  2. Create repository using github_create_repository with description and topics
  3. Push initial commit with:
    • README.md
    • LICENSE
    • .gitignore
    • CONTRIBUTING.md
    • .github/ISSUE_TEMPLATE/
    • .github/PULL_REQUEST_TEMPLATE.md
    • .github/workflows/ci.yml
  4. Enable security features (Dependabot, code scanning)

Common Tasks

Create new repository with full structure

# 1. Plan metadata
# Description: "CLI tool to convert video to GIF with optimal compression"
# Topics: ["cli", "golang", "video", "gif", "converter", "ffmpeg"]

# 2. Create repository
github_create_repository(
    name="video-to-gif",
    description="CLI tool to convert video to GIF with optimal compression",
    private=False,
    autoInit=True
)

# 3. Push files using github_push_files
# Include all essential files in initial commit

Add workflow to existing repo

github_create_or_update_file(
    owner="username",
    repo="repository",
    path=".github/workflows/ci.yml",
    content=workflow_yaml,
    message="Add CI workflow",
    branch="main"
)

Project Type Recommendations

TypeKey FilesCI Focus
Librarypackage.json, tsconfig, READMETest + Lint + Publish
CLIpackage.json, Makefile, READMETest + Build + Release
Web Apppackage.json, Dockerfile, READMETest + Build + Deploy
APIOpenAPI spec, Dockerfile, READMETest + Security Scan
Data Sciencenotebooks/, requirements.txtNotebook linting, Tests

Quick Checklist

Before marking repository as "production-ready":

  • README clearly explains project purpose

  • LICENSE file present and appropriate

  • .gitignore excludes sensitive files

  • CI/CD workflow runs tests

  • Issue templates configured

  • PR template configured

  • CONTRIBUTING.md explains how to contribute

  • Dependabot configured (for dependencies)

  • Branch protection enabled on main

  • Description is clear and descriptive (max 160 chars)

  • Topics include relevant language, framework, and category tags

  • GitHub Best Practices

  • Gitignore Templates

  • Choose a License

  • GitHub Actions Documentation

Tech Stack Knowledge

This skill recognizes common technology stacks and knows how to structure repositories for each.

Recognized Tech Stacks

The skill automatically identifies these stacks and applies appropriate templates:

StackKeywordsStructure
Node.js/Expressexpress, nodejssrc/, routes/, middleware/, test/
Reactreact, create-react-appsrc/components/, src/hooks/, src/pages/
Next.jsnextjs, next.jsapp/, pages/, components/
Vuevue, vuejs, nuxtcomponents/, pages/, stores/
Djangodjangoproject/, apps/, templates/
FastAPIfastapiapp/, api/, models/
Flaskflaskapp/, routes/, models/
Go/Gingin, golangcmd/, internal/, pkg/
Rustrust, cargosrc/, tests/, examples/
Python/MLpytorch, tensorflow, mlnotebooks/, models/, data/

Stack Detection

When user provides a project idea, identify the stack from:

  1. Explicit mention: "I want a React app"
  2. Keywords in description: "API", "bot", "CLI"
  3. File types: .jsx, .py, .go, .rs

Stack-Specific Configuration

For each detected stack, automatically apply:

  • Language config: tsconfig.json, pyproject.toml, go.mod
  • Linting config: ESLint, ruff, golangci-lint
  • Testing config: Jest, pytest, go test
  • CI workflow: Stack-appropriate action versions
  • Dependencies: Package manager (npm, pip, go mod, cargo)

Common Stacks with Templates

MERN Stack (MongoDB, Express, React, Node)

├── backend/
│   ├── src/
│   │   ├── routes/
│   │   ├── models/
│   │   ├── controllers/
│   │   └── config/
│   ├── package.json
│   └── .env.example
├── frontend/
│   ├── src/
│   │   ├── components/
│   │   ├── pages/
│   │   ├── hooks/
│   │   └── services/
│   ├── package.json
│   └── .env.example
└── docker-compose.yml

Topics: mern, mongodb, express, react, nodejs, rest-api

T3 Stack (Next.js, tRPC, TypeScript, Tailwind)

├── src/
│   ├── server/
│   │   ├── routers/
│   │   └── trpc.ts
│   ├── pages/
│   ├── components/
│   ├── styles/
│   └── utils/
├── prisma/
│   └── schema.prisma
├── next.config.js
├── tailwind.config.ts
└── tsconfig.json

Topics: nextjs, trpc, typescript, tailwind, prisma, fullstack

Serverless Stack (AWS Lambda)

├── src/
│   ├── handlers/
│   └── utils/
├── serverless.yml
├── webpack.config.js
├── jest.config.js
└── tsconfig.json

Topics: serverless, aws-lambda, aws, serverless-framework, typescript

Data Engineering Stack

├── dags/              # Airflow DAGs
├── scripts/           # ETL scripts
├── notebooks/         # Jupyter notebooks
├── src/               # Python packages
├── tests/
├── requirements.txt
├── setup.py
└── docker-compose.yml

Topics: data-engineering, airflow, etl, python, apache-spark, docker

Stack-Specific CI

StackCI Focus
FrontendBuild, lint, test, Lighthouse audit
BackendBuild, test, security scan, coverage
FullstackFrontend + Backend + integration tests
DataNotebook linting, data validation, tests
InfrastructureTerraform validation, Ansible lint

See references/stacks.md for detailed configurations.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

git-commit

Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff, (3) Interactive commit with optional type/scope/description overrides, (4) Intelligent file staging for logical grouping

Repository Source
14.2K25.3Kgithub
Coding

gh-cli

GitHub CLI (gh) comprehensive reference for repositories, issues, pull requests, Actions, projects, releases, gists, codespaces, organizations, extensions, and all GitHub operations from the command line.

Repository Source
11.2K25.3Kgithub
Coding

prd

No summary provided by upstream source.

Repository SourceNeeds Review
10K-github
Coding

refactor

No summary provided by upstream source.

Repository SourceNeeds Review
9.2K-github