Project Documentation Template
Version 1 · Publish PROJECT_DOCUMENTATION_TEMPLATE.md as an individual standard project-start document.
Historical version[Project Name] Documentation
Document set version: [x.y.z]
Date: [YYYY-MM-DD]
Status: [Current status in one sentence.]
Purpose
[Project Name] [briefly describe what the project does, what business/data problem it solves, and who/what uses the output].
Operating Rules
- Work on the local project folder first:
[local project path]. - Do not work directly in OneDrive.
- If a OneDrive project folder exists, copy only non-data project files to it when Robert explicitly asks or at end of session.
- Do not copy
data\,working\, raw data, exports, or large/privatefinal-files\outputs to OneDrive unless Robert explicitly asks and the destination is appropriate. - Do not store secrets, API keys, database passwords,
.env, ordb.jsoninside the project or OneDrive. - Do not ask after every user request whether documentation should be updated.
- Update documentation, changelog, and handover after significant work, when Robert explicitly requests a handover, or as part of a push/delivery.
OneDrive Policy
OneDrive target, if used:
[OneDrive project path]
Copy to OneDrive only:
- Source code.
- Config templates that do not contain secrets.
- Scripts.
- Prompts.
- Documentation.
- Handover notes.
- Changelog.
Do not copy by default:
- Generated data.
- Raw API responses.
- Intermediate working files.
- Final output files.
- Credentials or local machine secrets.
Directory Roles
| Path | Purpose |
|---|---|
changelog\ |
Change history. |
data\ |
Local raw/input/intermediate/generated data. Exclude contents from GitHub. |
documents\ |
Current general, user, architecture, operations and version documentation. |
final-files\ |
Reviewed final process outputs and accepted sources of truth. Document whether each type is tracked or backed up outside Git. |
handover\ |
Current and historical handover notes. |
src\ |
Maintained source code; source-specific Markdown may live beside the code. |
tests\ |
Tests, test support code and safe synthetic fixtures only. |
tools\ |
Small, narrowly scoped inspection/conversion/maintenance utilities. |
working\ |
The single local scratch/build/investigation area. Exclude contents from GitHub. |
Important supported launch wrappers such as run.bat or start-server.bat may live at the project
root. Keep their implementation small, place maintained code in src\, and document every root
command in this file.
Workflow
- Confirm the goal and local project path.
- Inspect existing code/config/docs before editing.
- Make local source/config/prompt changes.
- Run targeted verification.
- Report what changed and what was verified.
- Update documentation/changelog/handover only after significant work, when Robert requests a handover, or as part of a push/delivery. Do not prompt about this after routine requests.
- Sync non-data files to OneDrive only when asked or at end of session.
Documentation Update Policy
Routine questions, investigations, small edits and intermediate iterations do not require a documentation prompt or a changelog/handover update.
Update the project documentation set when any of these triggers occurs:
- significant work changes behaviour, scope, architecture, configuration, deployment, security, dependencies, user workflow or an important operational procedure;
- Robert explicitly asks for a handover; or
- work is being committed and pushed as a meaningful delivery.
Use one consolidated update for a logical body of work. Do not produce a separate changelog or handover entry for every prompt, minor edit, temporary commit or repeated push attempt. A handover must describe the verified state, remaining work and next actions at the point it is requested or the delivery is pushed.
Modules
| Module/File | Purpose | Key Inputs | Key Outputs |
|---|---|---|---|
[module path] |
[What it does.] | [Inputs/config.] | [Outputs/side effects.] |
[module path] |
[What it does.] | [Inputs/config.] | [Outputs/side effects.] |
Config
| Field | Purpose | Default/Example | Notes |
|---|---|---|---|
[config_field] |
[What it controls.] | [value] |
[Operational notes.] |
Commands
Show help:
[command] --help
Run the main local workflow:
[command with typical arguments]
Run a small test/review:
[small test command]
Dependencies
| Dependency | Purpose | Install/Location |
|---|---|---|
[dependency] |
[Why it is needed.] | [install command or bundled path] |
Secrets
Secrets are read from:
[environment variable name][external local credentials path, e.g. C:\Users\Robert\db.json]
Never store secrets in:
- Source code.
- Config committed/copied with the project.
- OneDrive project folders.
- Markdown documentation.
Verification
Record the latest verification commands/results here when useful:
| Check | Command | Result |
|---|---|---|
| Compile/import check | [command] |
[Pass/fail and date.] |
| Small functional test | [command] |
[Pass/fail and date.] |
Current Gaps / Next Work
- [Open decision or missing schema/API detail.]
- [Known limitation.]
- [Next implementation step.]