Guidance for Claude Code when working in this repository.
daw — the custom WordPress theme behind davidawindham.com,
running since 2004. This git repo covers the theme only
(wp-content/themes/daw), not the full WordPress install. It is a classic
(non-block) PHP theme with a hand-rolled gulp build. Expect cruft: ~22 years of
accumulated pages, libraries, and dead code. Confirm before deleting anything
you didn't write — old code here is often load-bearing in non-obvious ways.
/Users/david/Sites/daw (theme is wp-content/themes/daw)wp on PATH)dw-guten (custom Gutenberg sidebar/metaboxes)Run from the theme directory:
| Command | What it does |
|---|---|
gulp copy |
Pull vendor assets out of node_modules into js/ and css/ (v4-*) |
gulp mixin |
Compile css/**/*.scss → .css |
gulp build |
Concat + minify the main stylesheet → v4-style.min.css |
gulp cssf |
Minify front-page CSS → css/v4-front.min.css |
gulp js |
Concat + minify main scripts → js/v4-script.min.js |
gulp jsf |
Concat + minify front-page scripts → js/v4-front.min.js |
gulp run |
BrowserSync proxy of https://daw.ovid + watch (scss/css/php/js) |
Edit source (style.css, css/*.scss, css/*.css, js/scripts.js,
js/front-page.js), then rebuild. Never hand-edit the generated v4-*.min.*
files — they are clobbered on the next build.
front-page.php,
single.php, archive.php, page-{slug}.php, etc.). Many page-*.php map to
specific pages by slug (about, studio, music, art, contact, desk…).inc/: theme PHP loaded from functions.php —
utils.php, template.php, tweaks.php (always), plus smtp.php, form.php,
analytics.php loaded conditionally. inc/lib/ holds vendored helpers
(Twilio call/SMS, simple_html_dom).header-*.php / footer-*.php: page-specific variants (-home, -studio).dw_scripts() in functions.php — a big
per-page if/elseif ladder keyed on is_page('slug'). Add new page assets there.dw_. Match it..editorconfig is the standard: 2-space indent, LF, UTF-8, final newline,
trim trailing whitespace. (Older files have mixed tabs — follow editorconfig
for new/edited code.)/wik/), injected in wp_footer.Scratch space, plans, and investigation notes live in _claude/ — see
_claude/README.md. Keep generated artifacts and throwaway scripts there, not at
the theme root.
style.css is both the WP theme manifest (header comment) and real CSS —
don't strip the header.img/ and inc/lib/call/auth.php are gitignored (secrets/assets).style.min.css, v4-style.min.css); the theme
enqueues v4-style.min.css. style.min.css is legacy.