Skip to content

docs: move documentation from README to a docs/ folder rendered on codetech.pt #72

Description

@jfrosorio

Problem

The README is 578 lines with ~15 usage sections and keeps growing with every feature (Credit Card support is next on the roadmap). It has outgrown the single-file format.

Proposal (repo side)

Follow the Spatie packages pattern:

  • Move all usage documentation into a docs/ folder in this repo, one markdown file per topic.
  • Each page carries frontmatter with title and weight (sidebar label + order), matching the convention used by spatie/laravel-medialibrary.
  • Add a docs/index.md whose frontmatter holds section metadata (title, slogan, githubUrl, branch).
  • Shrink the README to: banner, badges, a ~20-line quick start, a link to the docs on codetech.pt/open-source/laravel-eupago, and the community sections (contributing / security / license).
  • Docs keep being updated in the same PR as the feature they document.
  • The site documents the current major only; older majors keep their frozen READMEs on their X.x maintenance branches.

Suggestion (site side — needs more discussion)

How codetech.pt fetches and renders the docs/ folder is not settled by this issue; the following is only a starting point for discussion:

  • Mirror spatie.be's architecture: a scheduled docs:import artisan command that syncs the repo's docs/ folder to local storage (markdown) and public/ (assets), with the site rendering from local disk — never fetching GitHub at request time.
  • Possible simplification over Spatie's git sparse-checkout: download the branch tarball (archive/refs/heads/master.tar.gz) with a single request and extract docs/.
  • No webhook initially; a scheduled full re-import (Spatie currently runs one daily) is likely enough.

Alternatives (per-request fetch with caching, webhook-driven imports, etc.) are still on the table.

Scope of this issue

Only the repo-side changes: docs/ content structure and the slimmed README. Site-side rendering/import work belongs to the codetech.pt codebase.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions