gomezpaz.org

Personal sites

This directory holds the canonical source for family members’ personal sites. Each site is self-contained so it can be previewed locally and published independently.

Directory convention

Create one directory per person:

sites/
  matias/
    index.html
    styles.css
    script.js
    CNAME
    assets/

Every site must include:

Add a new family page

  1. Create sites/<name>/ and build the site there.
  2. Add a CNAME file containing <name>.gomezpaz.org.
  3. Preview it from the repository root:

    python3 -m http.server 8000 --directory sites/<name>
    
  4. Open http://localhost:8000 and verify desktop, mobile, links, and any printable pages.
  5. Create a public deployment repository. A clear name is <name>.gomezpaz.org.
  6. Enable GitHub Pages from the deployment repository’s main branch and repository root.
  7. At the DNS provider, add a CNAME record from <name> to the deployment owner’s <account>.github.io hostname.
  8. Publish the site with:

    ./scripts/publish-site.sh <name> https://github.com/<account>/<name>.gomezpaz.org.git
    
  9. Commit the source changes in this family repository. The deployment repository is generated output and should not become the editing source.

Update an existing page

Edit only its directory, test locally, then run the same publish command. The script clones the deployment repository into a temporary directory, replaces its published files, creates a normal commit, and pushes without rewriting history.

For Matias:

./scripts/publish-site.sh matias https://github.com/mgomezpaz/matias.gomezpaz.org.git

The root CNAME must stay gomezpaz.org; a personal site’s CNAME belongs inside that person’s directory.