A welcoming repo has:
README.md — what it is, how to run it, where to ask questions.
CONTRIBUTING.md — branch naming, commit format, PR template, release process.
CODE_OF_CONDUCT.md — for OSS especially.
SECURITY.md — how to responsibly report vulnerabilities.
.github/PULL_REQUEST_TEMPLATE.md — what every PR description must include.
.github/ISSUE_TEMPLATE/ — bug, feature, question forms.
LICENSE — required for OSS.
Per-language conventions:
.editorconfig for indent/encoding
.nvmrc / .tool-versions for runtime version
.env.example documenting required env vars
docker-compose.yml or a setup script for one-command bootstrap
A senior engineer joining your repo should be able to:
- Clone
- Run one command
- Run the test suite
- See the app
…within 15 minutes. If it takes longer, your onboarding has a bug.