LowDO - Low Design Office

"Realizing more with less"

An architecture and design studio portfolio website based in Austin, Texas.

Documentation


Workflow

  1. Create a feature branch — Never commit directly to main. Use feature/description or fix/description naming.

  2. Start the dev server — After switching to your branch, run npm run serve and keep it running while you work.

  3. Make changes — Edit files as needed. The dev server auto-reloads.

  4. Commit and push — Stage changes with git add, commit with a clear message, and push to GitHub.

  5. Open a pull request — Create a PR targeting main with a descriptive title and description of changes.

  6. Merge and clean up — After approval/review, merge to main (which auto-deploys).

Design Goals

Philosophy

Visual Principles

Technical Principles


Current Features

Core

Theming

Performance

Infrastructure


Project Structure Notes

_data/settings.yaml    # Site-wide configuration (edit this for theme changes)
entries/               # All content entries
  projects/            # Project entries — get individual pages at /project/{slug}/
  other/               # All non-project entries (news, awards, features, etc.)
_includes/components/  # Reusable template components
admin/                 # Password-protected admin page (/admin/)
netlify/functions/     # Serverless functions (admin auth + GitHub commit API)
scripts/               # One-time utility scripts (e.g. migration)

Entry Type System

Entry type is stored in the type: frontmatter field of each .md file. The folder determines only whether an entry gets a detail page:

Changing between non-project types is a frontmatter-only operation. Changing to/from project requires moving the file between folders.


Adding Content to the Comprehensive Index

The Comprehensive Index at /index/ displays all entry types in a filterable spreadsheet-style layout.

Supported Entry Types

Adding a New Entry

Via admin panel (recommended): Go to /admin/, click + New Entry, fill in fields, save.

Manually:

  1. Create a folder in entries/projects/ (for projects) or entries/other/ (for everything else)
  2. Create a markdown file with the same name as the folder
  3. Add type: and other frontmatter fields

Frontmatter Reference

Required fields (all entries):

---
draft: false
type: award          # Entry type — determines filter label and project-only fields
title: "Entry Title"
date: 2024-01-15
---

Common optional fields:

subtitle: "Brief tagline shown below title"  # Displayed in Column 2
categories:                                   # Displayed in Column 3
  - HOUSING
  - SUSTAINABLE
position: 1  # Sort order (lower = first)

Metadata by Entry Type

Projects (entries/projects/, type: project)

---
draft: false
type: project
title: "Project Name"
subtitle: "Brief tagline"
date: 2024-01-15
year: 2024
categories:
  - HOUSING
  - SUSTAINABLE
collaborators:
  - name: "Partner Name"
    role: "Structural Engineer"
position: 1
---

Updates (entries/other/, any non-project type:)

---
draft: false
type: award
title: "Update Title"
subtitle: "Brief tagline"
description: "Short description"
date: 2024-01-15
link: "https://external-url.com"
position: 2
---

Staff (entries/other/, type: staff)

---
draft: false
type: staff
title: "Full Name"
subtitle: "Role / Title"
date: 2024-01-15    # Start date — displayed as year on About page
active: true        # true = shown on About page, false = hidden
---

Bio text here.

Category and Type Management

Categories and types can be renamed in bulk from the admin panel: /admin/Manage Labels. This renames the label across all entries in one operation without needing to edit files individually.

Adding Images

Drop an image file in the entry folder for automatic thumbnail:

For projects only, additional images are auto-discovered for the gallery on the detail page.

Example: Adding an Award Entry

entries/other/emerging-voices-award/
├── emerging-voices-award.md
└── thumb.jpg
# emerging-voices-award.md
---
draft: false
type: award
title: "Emerging Voices Award"
subtitle: "Architectural League of New York"
date: 2021-12-31
categories:
  - AWARD
link: "https://archleague.org/..."
relatedProjects:
  - "000000_project-slug"
---

LowDO has been selected for the Architectural League's Emerging Voices program...

Development Commands

npm run serve          # Start development server
npm run build          # Production build
netlify dev            # Full Netlify dev environment

Links