Wiki Schema
Domain
Punk rock and subculture from 1977 through 2026. Covers musical movements, scenes, bands, venues, zines, fashion, ideology, DIY ethos, crossover subcultures, and the broader cultural impact of punk and adjacent underground movements. Pre-1990 coverage focuses on foundational bands, scenes, and infrastructure that directly shaped the 1990+ era.
Conventions
- File names: lowercase, hyphens, no spaces (e.g.,
fugazi.md,riot-grrrl.md) - Organized in subdirectories:
bands/,labels/,venues/,people/,media/,scenes/,genres/ - Every wiki page starts with YAML frontmatter (see below)
- Use
[[wikilinks]]to link between pages (minimum 2 outbound links per page) - When updating a page, always bump the
updateddate - Every new page must be added to
SUMMARY.mdunder the correct section - Every action must be appended to
log.md - Every page must reference at least one source in
raw/
Frontmatter
---
title: Page Title
created: YYYY-MM-DD
updated: YYYY-MM-DD
type: band | label | venue | person | media | scene | genre
tags: [from taxonomy below]
sources: [raw/articles/source-name.md]
---
Tag Taxonomy
Every tag on a page must appear below. Add new tags here FIRST, then use them.
Entity Types
band— musical actlabel— record labelvenue— physical performance spaceperson— individual (non-band context)media— zine, blog, website, publicationscene— geographic music communitygenre— musical genre or movement
Subgenres
hardcore, nyhc, post-hardcore, pop-punk, emo, midwest-emo, screamo, crust, d-beat, anarcho-punk, grindcore, powerviolence, noise-rock, melodic-hardcore, straight-edge, youth-crew, street-punk, oi, ska-punk, folk-punk, riot-grrrl, queercore, horror-punk, digital-punk, garage-punk, skate-punk, post-punk, post-metal, sludge, power-pop, indie-rock, alternative-rock, progressive-rock, reggae, electronic, metal, goth
Culture
diy, feminism, zine
Roles
person, producer, label-founder, promoter
Periods
era-1970s, era-1980s, era-1990s, era-2000s, era-2010s, era-2020s
Infrastructure
venue, festival, tour, label, distributor, media
Page Thresholds
- Create a page when an entity/concept appears in 2+ sources OR is central to one source
- Add to existing page when a source mentions something already covered
- DON’T create a page for passing mentions, minor details, or things outside the domain
- Split a page when it exceeds ~200 lines — break into sub-topics with cross-links
- Archive a page when its content is fully superseded — move to
_archive/, remove from index
Ingest Workflow
① Capture the raw source: URL → web_extract → save to raw/articles/. Paste → save directly.
② Discuss takeaways with the user.
③ Check what exists: search_files across wiki for mentioned entities.
④ Write or update pages with frontmatter, cross-references, proper tags.
⑤ Update SUMMARY.md and log.md.
⑥ Report what changed.
Sources
All source material goes in raw/:
raw/articles/— web articles, blog posts, interviewsraw/papers/— PDFs, academic sourcesraw/transcripts/— interviews, oral histories
Sources are immutable — never modify files in raw/. Corrections go in wiki pages.
Update Policy
When new information conflicts with existing content:
- Check the dates — newer sources generally supersede older ones
- If genuinely contradictory, note both positions with dates and sources
- Mark the contradiction in frontmatter:
contradictions: [page-name] - Flag for user review in the lint report