Contributing to the DPC Startup Kit¶
The DPC Startup Kit is a free, physician-written reference for starting and running a Direct Primary Care practice. It is published under a Creative Commons BY-NC 4.0 license, built in the open at github.com/dpcmentor/dpcstartupkit, and maintained alongside the DPC Mentor Platform.
Contributions of every size are welcome: a corrected fee, a dated citation, a reviewed state guide, or a new chapter. This page explains how.
Ways to contribute¶
| You want to... | Do this |
|---|---|
| Report an error or something out of date | Open an issue with the page and what is wrong |
| Suggest a topic the kit does not cover | Check the content roadmap, then open an issue |
| Review an existing guide for accuracy | See Reviewing a guide below |
| Write or substantially revise content | See Submitting changes below |
You do not need to know Git. Small edits can be made entirely in the browser.
Before you write¶
This is educational content, not legal, tax or financial advice. Every guide that touches law, tax, licensing or regulation must keep that framing and point readers to a qualified professional for their situation.
Cite your sources. For any legal, tax, regulatory or pricing claim, link the primary source (statute, agency page, IRS or CMS guidance) and note the date you checked it. Rules differ by state and change often. An undated claim is the first thing a reviewer will ask about.
Disclose affiliations. The kit does not endorse a single EMR, website vendor, consultant or membership organization, and it is not funded by any. If you mention a product or company and have a financial relationship with it, say so in your pull request so the maintainer can decide how to present it. Mentioning several options with plain tradeoffs is fine. Steering readers to one is not.
No contract templates. The kit does not publish membership agreement or policy wording for readers to copy. Refund, termination and disclaimer clauses are dictated by state statute, and wrong wording harms both physician and patient. Describe what an agreement must cover and cite the statute; leave the drafting to the reader's attorney.
Write for the reader who has never run a business. Assume clinical expertise and no administrative experience. Define acronyms on first use. Say "physicians", not "providers". Give timeframes and cost ranges where you can. Formal but plain.
Submitting changes¶
There are two paths. Both end in a pull request, which the maintainer reviews before anything is published.
Path A: small edits in the browser¶
Good for typo fixes, updated numbers, a corrected link or a new paragraph.
- Open the page on the site and click the edit icon (pencil) at the top of the page, or find the file under
docs/in the repository and click the pencil there. - If you are not a collaborator, GitHub will offer to fork the repository for you. Accept.
- Make your edit and click Commit changes. Write a one-line summary of what you changed and why.
- GitHub will prompt you to open a pull request. Do that, and add any sources you relied on to the description.
Path B: larger work on your own machine¶
Good for new guides, reorganizing a section, or anything you want to preview before submitting.
- Fork the repository and clone your fork.
- Create a branch for the change.
-
Preview the site locally:
Then open http://127.0.0.1:8000/ in a browser. Pages reload as you save.
-
Run the same check the pull request will run:
-
Push your branch and open a pull request against
main.
What the automated checks do¶
Every pull request runs two checks. Both must pass before merge.
- Strict build. The site is built with MkDocs Material in strict mode. A broken internal link, a page missing from the navigation, or a malformed Markdown table fails the build. Use relative links between pages (
../technology/emr-selection-guide.md, not a full URL) so the check can verify them. - Internal link check. Every internal link on the site is followed. External links are checked on a weekly schedule rather than per pull request, so a dead outside link will not block you, but please fix any you notice.
If a check fails, the pull request page shows which one and why. Ask if the message is not clear.
Reviewing a guide¶
Progress is tracked in REVIEW-STATUS.md. There are two kinds of review, and the lighter one is the more common.
Any help counts¶
Read a page and fix what is unclear, out of date or wrong. Then mark it Read-through in the status file with your initials and the date. That takes twenty minutes, it needs no research, and it is the most useful thing most contributors do. Any page qualifies.
If you want your name on a page¶
Some pages depend on law, tax rules or market pricing that change. For those, a Reviewed mark means that, as of the date you give, you:
- read the whole page, not just the part in your specialty;
- checked each legal, tax, regulatory or pricing claim against a primary source, and fixed or removed anything you could not confirm;
- confirmed the educational-content disclaimer is present.
A page marked Reviewed shows "Reviewed by" with your name at the top. Only about twenty pages need this level of review. They are listed at the top of the status file. Pick one in your specialty, or the guide for your state.
If a page needs more work than you can give it, mark it Needs Update and say what is wrong in the Notes column. That is a useful contribution too.
Steps¶
- In
REVIEW-STATUS.md, find the page. Set its status to In Review and put your initials in the Reviewer column, so nobody duplicates your work. Commit that change (Path A above works for this). - Review the page and make your edits.
- Return to
REVIEW-STATUS.md. Set the status to Read-through or Reviewed, the date inYYYY-MM-DDform, and a short note on what you changed. - Submit the page edits and the status change together in one pull request.
| Status | Meaning |
|---|---|
| Not Reviewed | Nobody has looked at it yet |
| In Review | Someone has claimed it |
| Read-through | Read in full and corrected for clarity; facts not independently verified |
| Reviewed | Every legal, tax, regulatory and pricing claim checked against a source as of the date shown |
| Needs Update | Known to be stale or incomplete |
Credit¶
Contributors are credited. Reviewers and authors are recorded by name or initials in REVIEW-STATUS.md, and pages marked Reviewed carry a visible "Reviewed by" line on the page itself. If you are contributing on behalf of an organization and would like it named, say so in the pull request. If you would rather not be named, say that instead and you will be listed as "anonymous reviewer".
License for contributions¶
By submitting a contribution you agree that:
- it is licensed under the same CC BY-NC 4.0 terms as the rest of the kit, with copyright held collectively as "DPC Startup Kit Contributors";
- you have the right to contribute it. Do not paste in text, forms or tables from copyrighted sources without permission. Summarize and cite instead.
The non-commercial license is deliberate. The kit is meant to stay free for physicians, and contributions cannot change that.
Authoring reference¶
Where files go¶
All published content lives under docs/, organized by section:
docs/
├── bootstrap/ # Lowest-cost launch path
├── getting-started.md
├── business-formation/ # Entity, registration, insurance, tax
├── small-business-fundamentals/ # Accounting, cash flow, financial statements
├── pricing-membership/ # Membership models, pricing, agreements
├── technology/ # EMR, telehealth, communication tools
├── marketing/ # Branding, outreach, employer partnerships
├── compliance-legal/ # HIPAA, opt-out, documentation, state rules
├── operations/ # Space, staffing, workflow, inventory
├── mentoring/ # Mentor and mentee onboarding
├── resources/ # External links, reading
├── states/ # One guide per state
└── kit-templates/ # Spreadsheets and document templates
A new page must also be added to the nav section of mkdocs.yml, or the strict build will fail.
Page structure¶
- Title, a clear descriptive heading
- Overview, what the page covers and why it matters
- Prerequisites, what the reader should have done first
- Content, with clear subheadings
- Checklist, an actionable summary where it fits
- Resources, sources, templates and related pages
File naming¶
- Lowercase with hyphens:
choosing-legal-entity.md - Descriptive:
membership-pricing-calculator.xlsx, notcalculator.xlsx - Templates start with
template-, checklists withchecklist-
Checklists¶
Use task-list syntax:
A page whose main purpose is a working checklist can make it interactive, so readers can tick items and have progress saved in their own browser. Add this at the very top of the file:
When set, every - [ ] item on the page becomes a real checkbox with a progress bar and a reset button. Checked state stays in the reader's browser and is never sent anywhere. Use it on action checklists, not on reference pages that happen to contain a list. Keep item labels short, because the label text identifies the checkbox and rewording an item resets it for returning readers. Implementation details are in ARCHITECTURE.md.
Templates¶
- Spreadsheets go in
docs/kit-templates/spreadsheets/, documents indocs/kit-templates/documents/. Each folder has a README listing its files. - Test every formula before submitting a spreadsheet.
- Explain how to use a template in the guide that references it.
Questions¶
Email support@dpcmentor.com or open an issue. If you are unsure whether something belongs in the kit, ask first. A short issue saves a long rewrite.