Skip to content

Repository files navigation

.github Repository

This is a special base template repo that contains default community health files, templates, workflows, and other files to be shared with derived repositories. For more information on how this special repo works, see this article on freeCodeCamp.

---
title: Personal GitHub Repo Structure
---

flowchart TB

  subgraph row1 [" "]
    github(<b>.github</b>
    repo)

    githubNote[Contains core files
    to be included in all repos.]
  end

  subgraph row2 [" "]
    templateA(<b>.template-a</b>
    repo)

    repo1(repo-1)

    templateB(<b>.template-b</b>
    repo)

    templateNote[Templates contain
    additional default files
    for specific project types.]
  end

  subgraph row3 [" "]
    repo2(repo-2)
    repo3(repo-3)
    repo4(repo-4)

    templateC(<b>.template-c</b>
    repo)
  end

  subgraph row4 [" "]
    repo5(repo-5)
  end

  classDef row opacity:0
  class row1,row2,row3,row4 row

  classDef current fill:#E68A39,color:#000000
  class github current

  classDef note fill:#FFFFDD,color:#000000
  class githubNote,templateNote note

  classDef repo fill:#34C3EB,color:#000000
  class repo1,repo2,repo3,repo4,repo5 repo

  github --> templateA
  github --> repo1
  github --> templateB

  templateA --> repo2
  templateA --> repo3
  templateB --> repo4
  templateB --> templateC

  templateC --> repo5
Loading

For how a change travels between these repos, and who owns which file when a sync conflicts, see Template Chain.

Table of Contents

Description of Files in This Template Repo

GitHub allows some community health and GitHub configuration files to only reside in the .github repo and automatically appear in all other repos. However, we can't take full advantage of that feature because most files need repo-specific customization.

In the tables below, Exists only in .github repo marks a file scaffolding deletes when it creates a derived repo. In Overridden in template repo: ✅ marks a file scaffolding actively rewrites or retargets for the new repo (settings.yml, always; LICENSE, only when private; CONTRIBUTING.md, SECURITY.md, SUPPORT.md and the issue forms, whose owner/repo links get retargeted); ➕ marks a file each layer extends without disturbing what came before — a new block, a new key, or a whole new file; a blank cell means the file is inherited unchanged, free to customize by hand if you want to.

File Exists only in
.github repo
Overridden in
template repo
Notes
📁.github/
 ├─📄CODEOWNERS N/A
 └─📄FUNDING.yml ✅
📄CODE_OF_CONDUCT.md Linked to by other files
📄CONTRIBUTING.md ✅ Links to other files
📄GOVERNANCE.md — — Not implemented
📄LICENSE N/A ✅ (private)
📄SECURITY.md ✅ Links to GitHub repo
📄SUPPORT.md ✅ Links to other files

GitHub Configuration

Template Exists only in
.github repo
Overridden in
template repo
Description
📁.github/
 ├─📁DISCUSSION_TEMPLATE/ — — Not implemented
 ├─📁instructions/ N/A ➕ Path-scoped AI instructions
 ├─📁ISSUE_TEMPLATE/ ✅ Contains GitHub Issue forms
 │    └─📄config.yml ✅ GitHub Issue template chooser
 ├─📄codecov.yml N/A ➕ Coverage thresholds
 ├─📄copilot-instructions.md N/A ✅ Copilot configuration
 ├─📄dependabot.yml N/A ➕ Dependabot configuration
 ├─📄gitversion.yml N/A How the version is calculated
 ├─📄pull_request_template.md GitHub Pull Request template
 └─📄settings.yml N/A ✅ Repo configuration

Shared composite actions live in the separate TaffarelJr/.actions repo, not under .github/ here — each workflow below marked via is a thin trigger that calls one.

Workflow Description
📁.github/
 └─📁workflows/
       ├─📄Draft Release Entry point for cutting a release, via TaffarelJr/.actions
       ├─📄Template Sync Brings changes from a template repo, via TaffarelJr/.actions
       ├─📄Test Scripts Runs the scaffolding scripts' tests on both platforms
       └─📄Validate Codecov Checks codecov.yml against Codecov's validator, via TaffarelJr/.actions

Other Files

File Description
📁.claude/ AI agents and skills
 └─📄CLAUDE.md Imports AGENTS.md for Claude Code
📁.github/agents/ Copilot mirrors of those agents
📁.vscode/ Contains VSCode settings
📁docs/ Contains documentation
📁scripts/ Repo scaffolding scripts, and their tests
📄.editorconfig Styleguide rule definitions
📄.gitattributes Built using scaffolding
📄.gitignore Built using scaffolding
📄.gitmessage Commit message template
📄AGENTS.md AI agent instructions

About

Special base template repo. Contains core files to be included in all repos.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages