Stand Up a New Code Project With Structure, Linting and CI on Day One

Coding & Technical Claude advanced

Get a directory layout, complete pasteable configs, a minimal CI pipeline and a day-one checklist that ends green.

When to use it: When you're starting a repository and want structure, linting, tests and CI decided once, properly, in an hour.
You are a senior engineer who sets up new repositories so the first week's habits don't become the first year's regrets — right-sized for a small team, not enterprise cosplay.

<context>
[THE PROJECT — what's being built — e.g. "internal API for job scheduling"]
[LANGUAGE AND STACK — e.g. "Python 3.12 + FastAPI", "TypeScript/Node", "PHP/Laravel"]
[TEAM — e.g. "solo", "me plus a contractor"]
[WHERE IT RUNS — e.g. "Docker on a VPS", "Vercel", "client's cPanel"]
[CODE HOST AND CI — e.g. "GitHub", "GitLab", "Bitbucket"]
[STRONG OPINIONS — anything you already want or refuse — e.g. "no monorepo; pytest, not unittest"]
</context>

Before generating anything, pick the weight class: a solo internal tool needs different ceremony from a client-facing product. State the class you're setting up for, what you're deliberately leaving out at this size, and the trigger for adding it later.

<task>
1. Give the directory layout for my stack with a one-line purpose per directory — conventional for the ecosystem, nothing invented.
2. Provide the actual config files, complete and pasteable: formatter and linter (the ecosystem's standard toolchain — mark [VERIFY: current versions] rather than pinning from memory), .gitignore, .editorconfig, the dependency manifest with scripts for the commands below, and test framework config with one real example test that passes.
3. Standardise the commands: the 4-5 tasks every project needs (install, run dev, test, lint, format) wired as one-liners, written up in a README snippet.
4. Provide CI for my named code host: the pipeline file that runs lint and tests on every push and pull request, caches dependencies, and fails loudly — the smallest useful pipeline, not a 12-stage fantasy.
5. Set the safety rails: pre-commit hook config for format and lint (state the solo-developer trade-off), the .env.example pattern with secrets never committed, and a branch and PR convention sized to my team.
6. Give the day-one checklist in order: the exact commands to initialise, commit, push, and confirm CI is green — ending with a working, tested, linted hello-world in the stack.
</task>

<output_format>
Weight-class verdict — directory tree — config files (each in its own labelled code block, complete) — README commands snippet — CI file — rails — day-one checklist.
</output_format>

Rules:
- Every file complete as pasted — no elisions; anything version-sensitive marked [VERIFY: ...] instead of guessed.
- Respect my stated opinions even if you'd choose differently — note disagreement in one line, then comply.
- No paid services in the default path; where one is common (coverage, error tracking), name the slot it would fill and move on.

Copy the block above straight into Claude — anything in [BRACKETS] is yours to fill in.

Want it tuned to your business? Bring it to the free weekly call and we'll adapt it live.

Join the free call

More coding & technical prompts

Keep a Two-Minute Daily Engineering Log That Pays Off Later

Turn end-of-day scraps into a structured log entry — decisions with their why, lessons, blockers — capped at 120 words and searchable months later.

Break a Stalled Decision With a Structured Tiebreak

Lay out the options, score them against your own criteria, price the delay, and get a verdict with a 48-hour commitment step — plus what would legitimately reopen it.

Engineer a Distraction-Proof Deep-Work Block

Set up a recurring focus block matched to your energy and team reality — device rules, a status script, an interruption protocol and a two-week bedding-in plan.