README exists and is adequately maintained
Why it matters
A missing or boilerplate README means the first developer to clone your project — or you on a new machine six months from now — must read source code to discover how to install dependencies, configure environment variables, and start the server. ISO 25010 maintainability.analysability fails at the project entry point. An unmodified create-next-app README is indistinguishable from a project with no documentation at all: it describes Next.js, not your project. Every undocumented setup step is a blocker for every future contributor.
Severity rationale
High because a missing or boilerplate README blocks every new contributor from setting up and running the project without direct help from the original author.
Remediation
Write a minimum viable README covering what the project does, how to install it, and how to run it. Reference src/app/ for the route structure and call out non-obvious setup steps:
# Project Name
One paragraph: what this does and who it's for.
## Setup
1. `npm install`
2. Copy `.env.example` to `.env.local` and fill in the values
3. `npm run dev` — runs on http://localhost:3000
## Project Structure
- `src/app/` — routes and pages
- `src/components/` — shared UI components
- `src/lib/` — utilities and third-party wrappers
Fifteen minutes of writing now saves hours of onboarding friction later.
Detection
-
ID:
readme-exists -
Severity:
high -
What to look for: Check for a
README.md(orREADME.rst,README.txt) in the project root. If found, evaluate its content:- Does it describe what the project does?
- Does it include setup/installation instructions?
- Does it describe how to run the development server?
- Is it the default create-next-app/boilerplate README with only the framework's default text (a fail — it contains no project-specific information)?
- Is it clearly outdated (references to renamed files, missing setup steps the codebase requires)?
-
Pass criteria: Count all sections in the README (headings at any level). A README exists with at minimum: a description of the project (at least 2 sentences), installation instructions, and a command to start the development server. It is not the unmodified framework boilerplate. The README must contain at least 50 words of project-specific content. Report even on pass: "README.md contains X words of project-specific content across Y sections."
-
Fail criteria: No README found, OR the README is the unmodified framework boilerplate (e.g., the exact default Next.js README that only says "This is a Next.js project bootstrapped with create-next-app"), OR the README is so outdated it references non-existent files or missing setup steps. Do NOT pass when a README exists but contains fewer than 50 words of non-boilerplate content.
-
Skip (N/A) when: Never — every project benefits from a README.
-
Detail on fail:
"README.md is the unmodified Next.js create-next-app boilerplate — contains no project-specific description, setup instructions, or documentation."or"No README.md found in project root."or"README references .env.local setup but no .env.example exists and no variables are documented." -
Remediation: A README is the first thing any new collaborator (or future you, six months from now) reads. The minimum viable README takes 15 minutes to write:
# Project Name One paragraph describing what this project does and who it's for. ## Setup 1. Clone the repo 2. `npm install` 3. Copy `.env.example` to `.env.local` and fill in the values 4. `npm run dev` — runs on http://localhost:3000 ## Key Technologies - Next.js 15 (App Router) - Supabase (database + auth) - Stripe (payments) ## Project Structure - `src/app/` — routes and pages - `src/components/` — shared UI components - `src/lib/` — utilities and third-party wrappers
External references
- iso-25010:2011 · maintainability.analysability — Analysability
Taxons
History
- 2026-04-18·v1.0.0·Initial import from code-maintainability·automated