From aaf96594853a78546ff85ceebcbda63fc5fcf548 Mon Sep 17 00:00:00 2001 From: Jason Colapietro Date: Sun, 19 Jul 2026 00:05:15 -0400 Subject: [PATCH] docs: add /docs and /articles sections Adds a documentation section (what Suede DNA is, sourcing and verification, search syntax, FAQ) and five archive-voice essays on rig history and tone genealogy. Wires both into header/footer nav, sitemap.ts, and llms.txt. --- public/llms.txt | 6 + .../building-a-tone-over-a-career/page.tsx | 148 ++++++++++++++++++ src/app/articles/page.tsx | 86 ++++++++++ .../page.tsx | 145 +++++++++++++++++ .../page.tsx | 141 +++++++++++++++++ .../page.tsx | 141 +++++++++++++++++ src/app/articles/the-unsung-link/page.tsx | 140 +++++++++++++++++ src/app/docs/faq/page.tsx | 99 ++++++++++++ src/app/docs/page.tsx | 68 ++++++++ src/app/docs/search-and-filters/page.tsx | 127 +++++++++++++++ .../docs/sourcing-and-verification/page.tsx | 117 ++++++++++++++ src/app/docs/what-is-suede-dna/page.tsx | 96 ++++++++++++ src/app/sitemap.ts | 16 ++ src/components/docs/IndexCard.tsx | 30 ++++ src/components/docs/PageShell.tsx | 74 +++++++++ src/components/footer/Footer.tsx | 6 + src/components/header/HeaderShell.tsx | 11 +- src/lib/articles-content.ts | 54 +++++++ src/lib/docs-content.ts | 36 +++++ 19 files changed, 1540 insertions(+), 1 deletion(-) create mode 100644 src/app/articles/building-a-tone-over-a-career/page.tsx create mode 100644 src/app/articles/page.tsx create mode 100644 src/app/articles/rig-archaeology-and-the-ear-trained-player/page.tsx create mode 100644 src/app/articles/shred-signal-and-the-virtuoso-rig/page.tsx create mode 100644 src/app/articles/the-guitar-rig-diagram-as-a-documentary-form/page.tsx create mode 100644 src/app/articles/the-unsung-link/page.tsx create mode 100644 src/app/docs/faq/page.tsx create mode 100644 src/app/docs/page.tsx create mode 100644 src/app/docs/search-and-filters/page.tsx create mode 100644 src/app/docs/sourcing-and-verification/page.tsx create mode 100644 src/app/docs/what-is-suede-dna/page.tsx create mode 100644 src/components/docs/IndexCard.tsx create mode 100644 src/components/docs/PageShell.tsx create mode 100644 src/lib/articles-content.ts create mode 100644 src/lib/docs-content.ts diff --git a/public/llms.txt b/public/llms.txt index d95f89b..67ab7a4 100644 --- a/public/llms.txt +++ b/public/llms.txt @@ -13,6 +13,12 @@ Suede DNA archives the rigs and signal chains of notable guitarists. Each entry This is a reference resource, not a commercial catalog. It is the guitar DNA archive — the signal-chain history of recorded music. +## Documentation and articles + +- Docs (sourcing, verification, search syntax, FAQ): https://dna.suedeai.ai/docs +- Articles (rig history, tone genealogy, gear-chain essays): https://dna.suedeai.ai/articles +- About / the method: https://dna.suedeai.ai/about + ## Related properties - Guitar chord tools and scales: https://guitarchords.info diff --git a/src/app/articles/building-a-tone-over-a-career/page.tsx b/src/app/articles/building-a-tone-over-a-career/page.tsx new file mode 100644 index 0000000..5d2c5cb --- /dev/null +++ b/src/app/articles/building-a-tone-over-a-career/page.tsx @@ -0,0 +1,148 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getArticle } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const SLUG = 'building-a-tone-over-a-career'; +const article = getArticle(SLUG)!; + +export const metadata: Metadata = { + title: article.title, + description: article.description, + alternates: { canonical: `${SITE_URL}/articles/${SLUG}` }, + openGraph: { + title: `${article.title} — Suede DNA`, + description: article.description, + url: `${SITE_URL}/articles/${SLUG}`, + siteName: 'Suede DNA', + type: 'article', + publishedTime: article.date, + }, + twitter: { + card: 'summary_large_image', + title: `${article.title} — Suede DNA`, + description: article.description, + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlePage() { + return ( + + +

+ The archive holds three documented rigs for Eric Clapton, filed under three different + band names because that is how the source material labeled them:{' '} + the Yardbirds, 1964,{' '} + John Mayall's Bluesbreakers, 1966, + and Cream, 1967. Three years, three + rigs, one guitarist. It is a small sample by any standard: a handful of documented + setups out of a career that has run more than six decades. But it happens to fall + across exactly the stretch where Clapton's reputation as a guitarist was built, + which makes it a useful case study in how a signal chain accumulates a personality over + time rather than arriving with one. +

+
+ + +

+ Clapton joined the Yardbirds in 1963 as a teenager with a reputation for strict blues + orthodoxy. By most accounts of the period, he was the member most resistant to the + band drifting toward pop material. His rig in this era was comparatively plain: a Fender + guitar and a modest amp setup, the kind of gear a working blues band could afford and + haul between London clubs. There is no pedalboard to speak of, because the vocabulary of + the pedalboard did not really exist yet for a player like him. Tone came from fingers, + a guitar, and an amplifier pushed to its own natural breakup. Nothing sat between the + two. +

+

+ It is worth pausing on how little that setup asks of anyone trying to understand it. One + guitar, one amp, no chain to trace. The interesting part of 1964 Clapton is not the gear; + it is the restraint. He left the Yardbirds in 1965, reportedly over the direction of + “For Your Love,” a decision that reads, in hindsight, like an early + declaration about what kind of guitarist he intended to be. +

+
+ + +

+ The Bluesbreakers rig is the one most guitarists actually know by ear before they know + it by name. This is the era of the John Mayall album that fans nicknamed “Beano” + after the comic Clapton is reading on the cover, and it produced a guitar tone that + effectively set the template for British blues-rock: a Gibson Les Paul into a cranked + Marshall combo, pushed loud enough in the studio that the story, repeated often enough + in guitar circles to have become its own piece of folklore, has an engineer objecting + and Clapton and Mayall keeping the take anyway. Whether every detail of that story is + precise or slightly burnished by fifty years of retelling, the tone itself is not in + dispute. It is on the record. +

+

+ What changed between 1964 and 1966 was not a new pedal or a clever trick. It was volume + and a different amplifier doing something a smaller, cleaner rig could not: a natural, + touch-sensitive overdrive that responded to how hard Clapton hit the strings. That single + shift, the same basic building blocks pushed harder, is arguably more influential on + decades of guitarists who followed than anything that came later in his career, pedals + included. +

+
+ + +

+ By the time the archive's Cream entry picks up in 1967, the context has changed + again. Cream was a power trio built to fill much bigger rooms than the Bluesbreakers ever + played, and Clapton's rig grew to match: Marshall stacks scaled for arena volume + instead of club volume and, most visibly, a different guitar. The Gibson SG associated + with this period, famously repainted in psychedelic swirls by the Dutch design + collective The Fool and known ever since by that name, is one of the most photographed + guitars in rock history, a visual signal of just how far the aesthetic had drifted from + a plain-finish Telecaster in a blues club three years earlier. +

+

+ A wah pedal enters the picture around this era too, most audibly on tracks like + “Tales of Brave Ulysses.” It is a small addition next to a new guitar and a + bigger amp stack, but it marks something: the beginning of the pedalboard as part of the + story, not an afterthought to it. The purist who resisted “For Your Love” + three years earlier was now playing psychedelic rock through a wah pedal in an + arena-scale power trio. Nothing about that is a contradiction. It is what three years of + a working musician's life actually looks like when you track the gear instead of the + reputation. +

+
+ + +

+ Looked at individually, each of these three rigs is a snapshot: a guitar, an amp, a year. + Looked at in sequence, which is exactly what the{' '} + DNA chain on an artist page is built to + do, they read as a chronology. Plainer gear and stricter genre commitments give way to + louder rooms, a different guitar, and the first pedal in the chain. None of that is a + single decision. It is accretion: one band, one room size, one new opportunity at a + time. And that accretion is closer to what “a guitarist's tone” usually + means than any single rig photo could be on its own. +

+

+ It is also a useful reminder about the limits of the archive itself. Suede DNA documents + three specific years for Clapton because three specific years are what upstream + photography preserved, not because his tone stood still in between. The chain shows what + was recorded, not everything that happened. For more on exactly what the archive does + and does not claim to verify, see{' '} + Sourcing and Verification. +

+
+
+ ); +} diff --git a/src/app/articles/page.tsx b/src/app/articles/page.tsx new file mode 100644 index 0000000..d07bdb9 --- /dev/null +++ b/src/app/articles/page.tsx @@ -0,0 +1,86 @@ +import type { Metadata } from 'next'; +import Link from 'next/link'; +import { ARTICLES } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; + +export const metadata: Metadata = { + title: 'Articles', + description: + 'Essays on rig history, tone genealogy, and the craft of the signal chain — from the Suede DNA archive.', + alternates: { canonical: `${SITE_URL}/articles` }, + openGraph: { + title: 'Articles — Suede DNA', + description: + 'Essays on rig history, tone genealogy, and the craft of the signal chain — from the Suede DNA archive.', + url: `${SITE_URL}/articles`, + siteName: 'Suede DNA', + type: 'website', + }, + twitter: { + card: 'summary_large_image', + title: 'Articles — Suede DNA', + description: + 'Essays on rig history, tone genealogy, and the craft of the signal chain — from the Suede DNA archive.', + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlesIndexPage() { + return ( +
+

SUEDE/DNA / ARTICLES

+

+ Articles. +

+

+ Essays on rig history, tone genealogy, and the craft of the signal chain, written from + inside the archive. +

+ +
+ {ARTICLES.map((article) => ( + +

+ {formatDate(article.date)} · {article.readTime.toUpperCase()} READ +

+

+ {article.title} +

+

+ {article.description} +

+ + READ → + + + ))} +
+ + + ← BACK TO THE COMPILATION + +
+ ); +} diff --git a/src/app/articles/rig-archaeology-and-the-ear-trained-player/page.tsx b/src/app/articles/rig-archaeology-and-the-ear-trained-player/page.tsx new file mode 100644 index 0000000..d9220df --- /dev/null +++ b/src/app/articles/rig-archaeology-and-the-ear-trained-player/page.tsx @@ -0,0 +1,145 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getArticle } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const SLUG = 'rig-archaeology-and-the-ear-trained-player'; +const article = getArticle(SLUG)!; + +export const metadata: Metadata = { + title: article.title, + description: article.description, + alternates: { canonical: `${SITE_URL}/articles/${SLUG}` }, + openGraph: { + title: `${article.title} — Suede DNA`, + description: article.description, + url: `${SITE_URL}/articles/${SLUG}`, + siteName: 'Suede DNA', + type: 'article', + publishedTime: article.date, + }, + twitter: { + card: 'summary_large_image', + title: `${article.title} — Suede DNA`, + description: article.description, + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlePage() { + return ( + + +

+ Learning a part by ear is usually taught as a purely auditory skill: listen closely + enough, repeat it enough times, and the part reveals itself. That is true as far as it + goes, but it skips a step that experienced players tend to do without noticing: before + they try to reproduce a phrase, they make a guess about what produced it. A bend that + seems to come out of nowhere sounds different if you know the player was using a + whammy bar instead of a finger bend. A part that sounds impossibly clean at speed sounds + different once you know it was played through a rack system designed specifically to + keep gain consistent across the neck. Knowing the rig does not replace listening. It + changes what you are listening for. +

+
+ + +

+ Three things, mostly. First, it narrows the search space for technique. If you know a + part was recorded on a guitar with a scalloped fretboard, an unusually deep, hovering + vibrato stops being a mystery and starts being an expected consequence of the setup, and + you stop trying to replicate an effect and start replicating a technique, which is a + more useful thing to practice. Second, it recalibrates expectations about tone before + you spend an hour chasing a sound your own gear cannot physically produce. A part cut + through a heavily gained rack system into a 4x12 cabinet is not going to come out of a + bedroom amp at low volume no matter how precisely you dial in the knobs, and knowing + that up front saves the hour. Third, and this is the one that matters most for actual + ear training, it tells you where to stop listening for gear and start listening for the + player. Two guitarists with an identical rig still sound like two different people. Once + the hardware stops being the mystery, what is left is technique, timing, and touch, + which is the part worth learning by ear in the first place. +

+
+ + +

+ The same habit has an obvious failure mode: treating gear research as a substitute for + practice instead of a shortcut through it. It is possible to spend far more time + reading about a rig than playing along to the record it produced, and that time does + not transfer to the fingers. A signal chain diagram tells you the order of the pedals. It + does not tell you how hard the player picked, where their hand sat relative to the + bridge, or how they built a phrase across four bars instead of one. Those things only + come from listening, slowing the recording down, and playing it back until the hands + catch up with the ears. Rig knowledge is a lens, not a bypass. +

+

+ There is a related trap worth naming directly: assuming identical gear produces + identical results. Chase the exact scalloped Stratocaster and cranked Marshall from a + 1966 blues record and you will get closer to the tone, and still not sound like the + guitarist who played it, because tone is downstream of touch as much as it is downstream + of hardware. The rig narrows the gap. It does not close it. +

+
+ + +

+ The useful order, in practice, tends to run the opposite direction from how gear + curiosity usually unfolds. Most players hear a tone, immediately want to know the gear, + and only get around to actually learning the part afterward, or never. A more productive + sequence starts with the part: listen enough times to attempt it cold, form a hypothesis + about the technique, and only then check the gear to confirm or correct that hypothesis. + Used this way, an archive like the one on this site functions less like a shopping list + and more like an answer key: something you consult after you have already tried, to + check your guess about why a phrase sounds the way it does, not something you consult + instead of trying. +

+

+ This is also the reason artist pages here are built as a chronology rather than a single + gear list. A part learned from a 1966 recording and a part learned from a 1975 recording + by the same guitarist may call for genuinely different technique assumptions, because the + rig behind each one was different. +

+
+ + +

+ One habit worth building deliberately: check the year before you check the gear. It is + tempting to search an archive by artist name alone and assume whatever rig comes up + applies to the recording you are trying to learn. A guitarist's setup at the + start of a career and twenty years later can differ in every meaningful respect, from + the guitar itself to the amp voicing to the whole relationship between gain and + headroom. A rig documented three years after the record you are studying can + send you chasing a tone that has nothing to do with the one on the track. Cross-checking + the recording date against the documented year, when both are available, is a small step + that prevents a real and common mistake. +

+
+ + +

+ If ear training is the actual goal rather than gear trivia, rig archaeology works best as + a supplement to structured practice, not a replacement for it: a resource to check + after the attempt, alongside whatever method you use to build the skill in the first + place, whether that is a teacher, a method book, or a tool like{' '} + Strumly built specifically around + working through material by ear. The archive can tell you what a player was holding. It + cannot tell you how they held it. That part is still yours to figure out. +

+
+
+ ); +} diff --git a/src/app/articles/shred-signal-and-the-virtuoso-rig/page.tsx b/src/app/articles/shred-signal-and-the-virtuoso-rig/page.tsx new file mode 100644 index 0000000..4ed049b --- /dev/null +++ b/src/app/articles/shred-signal-and-the-virtuoso-rig/page.tsx @@ -0,0 +1,141 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getArticle } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const SLUG = 'shred-signal-and-the-virtuoso-rig'; +const article = getArticle(SLUG)!; + +export const metadata: Metadata = { + title: article.title, + description: article.description, + alternates: { canonical: `${SITE_URL}/articles/${SLUG}` }, + openGraph: { + title: `${article.title} — Suede DNA`, + description: article.description, + url: `${SITE_URL}/articles/${SLUG}`, + siteName: 'Suede DNA', + type: 'article', + publishedTime: article.date, + }, + twitter: { + card: 'summary_large_image', + title: `${article.title} — Suede DNA`, + description: article.description, + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlePage() { + return ( + + +

+ Somewhere in the mid-1980s, a certain kind of guitar rig stopped being a general-purpose + tool and started being built for one job: making extremely difficult things easy to play + live, night after night, at volume. Call it the virtuoso rig. It shows up across a run + of players documented in this archive: Yngwie Malmsteen, Steve Vai, Joe Satriani, Zakk + Wylde, who otherwise have little in common stylistically, but whose gear, looked at + side by side, is solving the same handful of problems: sustain without mush, gain + without losing note definition, and a level of physical reliability that a touring + rig from a decade earlier was never asked to provide. +

+
+ + +

+ Malmsteen's 1988 rig and his{' '} + 2008 rig are two decades apart and built + around the same core idea: a Fender Stratocaster with a scalloped fretboard, played + through a Marshall stack pushed hard enough to sustain a note indefinitely. The + scalloped neck is worth pausing on, because it is not really an effect in the pedal + sense. It is a piece of physical modification to the instrument that exists purely to + serve a playing style built on speed and vibrato depth, letting the fingertips push + past the fretboard surface instead of stopping at it. It is a reminder that the + “signal chain” framing this whole archive is built around does not start at + the guitar's output jack. For a player like Malmsteen, it starts at the neck. +

+
+ + +

+ Steve Vai and Joe Satriani both came up through session and sideman work. Vai + transcribed and performed famously difficult material for Frank Zappa before going + solo, and both built rigs in the late 1980s and 1990s around rack-mounted effects and + MIDI switching rather than a pedalboard on the floor. The instinct is practical: a rack + system lets a player recall a complex combination of gain, delay, and modulation + settings with a single footswitch press instead of stomping four pedals in sequence + mid-solo. Vai's 1999 rig and{' '} + 2007 rig, alongside{' '} + Satriani's 2000 setup, all sit in this + rack-and-signature-guitar tradition: Vai's Ibanez JEM, built to his own + specifications down to the handle cut into the body, and Satriani's equally + personalized Ibanez JS line. Neither rig reads as minimal. Both read as engineered: built + by players who knew exactly which sound they needed at which moment of a solo and + designed the hardware backward from that requirement. +

+
+ + +

+ Not every rig in this era chased speed. Tom Morello's{' '} + 1998 and{' '} + 2004 rigs belong to the same period + and the same broad instinct: engineer the hardware around a specific technical + requirement. But the requirement was texture, not velocity. Morello built a career on + making a guitar sound like a turntable and a DJ rig: a DigiTech Whammy pedal for + pitch-shift dive effects, a toggle switch wired to kill the signal for stutter and + scratch effects, and a playing approach that treated the guitar as a sound-design tool + first and a melodic instrument second. It is worth including next to Malmsteen, Vai, and + Satriani precisely because it proves the era was not defined by any one technique. It + was defined by a shared willingness to over-engineer a rig in service of a very specific, + very personal sound. +

+
+ + +

+ Not every player working in this window bought into rack systems or scalloped necks at + all. Zakk Wylde's 2000 and{' '} + 2011 rigs are built around a Gibson Les + Paul, the black-and-white “Bullseye” finish that became as much a visual + signature as a tonal one, into a straightforward, heavily overdriven Marshall stack, + closer in spirit to the Clapton-era approach of guitar-into-loud-amp than to Vai's + racks. Jeff Beck's 2003 rig and{' '} + Joe Bonamassa's 2010 rig sit even + further toward that traditionalist end: vintage-style guitars into vintage-voiced amps, + virtuosity expressed through touch and phrasing rather than hardware complexity. Put next + to Vai's rack, Wylde's and Bonamassa's rigs make the same point from the + opposite direction: the engineering-heavy virtuoso rig was a choice this era made + available, not a requirement it imposed. +

+
+ + +

+ The most durable legacy of this stretch of gear history is not any specific pedal or + amp. It is the idea that a rig could be designed, not just assembled, that the distance + between a player's intention and their live sound was an engineering problem worth + solving with a scalloped neck, a MIDI rack, a kill switch, or nothing more than a Les + Paul and a loud amp, depending on what the player was actually trying to do. That + plurality of approach, all coexisting in the same fifteen-year stretch, is easier to see + lined up side by side in an archive than it ever was one artist at a time. +

+
+
+ ); +} diff --git a/src/app/articles/the-guitar-rig-diagram-as-a-documentary-form/page.tsx b/src/app/articles/the-guitar-rig-diagram-as-a-documentary-form/page.tsx new file mode 100644 index 0000000..bfa4bab --- /dev/null +++ b/src/app/articles/the-guitar-rig-diagram-as-a-documentary-form/page.tsx @@ -0,0 +1,141 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getArticle } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const SLUG = 'the-guitar-rig-diagram-as-a-documentary-form'; +const article = getArticle(SLUG)!; + +export const metadata: Metadata = { + title: article.title, + description: article.description, + alternates: { canonical: `${SITE_URL}/articles/${SLUG}` }, + openGraph: { + title: `${article.title} — Suede DNA`, + description: article.description, + url: `${SITE_URL}/articles/${SLUG}`, + siteName: 'Suede DNA', + type: 'article', + publishedTime: article.date, + }, + twitter: { + card: 'summary_large_image', + title: `${article.title} — Suede DNA`, + description: article.description, + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlePage() { + return ( + + +

+ There is no formal name for the rig diagram as a document: the flattened, labeled + drawing of a pedalboard signal path, or the photograph annotated with amp settings and + guitar-to-amp order. It sits somewhere between a technical schematic and a fan artifact, + and it has been produced, informally and without much coordination, by three different + groups for three different reasons: touring techs who needed setups to be reproducible, + magazine editors who needed content, and fans who wanted to know how a record actually + sounded like that. None of those groups set out to build an archive. The archive is what + happened anyway. +

+
+ + +

+ The oldest and least glamorous form of rig documentation is the patch sheet a guitar + tech keeps so a rig can be rebuilt identically after a flight case gets thrown around an + airport for a week. This version has no interest in narrative. It is a list: guitar, + cable, pedal one, pedal two, amp input, amp settings, in order. Its entire job is + reproducibility, and it succeeds by being boring. Most of this material never left the + touring party that produced it. It existed to solve a Tuesday-night problem, not to + inform anyone. When it does surface publicly, decades later, in an interview or a book, + it tends to be treated as a small revelation, because for most of the history of + recorded music this was the only version of the diagram that existed at all. +

+
+ + +

+ Guitar magazines turned rig documentation into a recurring feature decades before video + made it easy. A writer would visit a tour, ask the guitarist or their tech to walk + through the board, and publish a gear list alongside the interview, sometimes with a + hand-drawn signal chain, sometimes just prose description. This is where a lot of gear + folklore actually originates: the studio anecdote about an amp pushed past its intended + volume, the pedal a player swears by that nobody else uses, the guitar that shows up in + every photo from one specific era and then never again. Video eventually did to this + format what it did to most print journalism. Premier Guitar's long-running{' '} + Rig Rundown series is the clearest modern descendant, walking a tech or a + player through an actual board on camera instead of describing it in a paragraph. The + underlying instinct did not change: readers and viewers wanted the signal chain, not + just the anecdote. +

+
+ + +

+ The material underneath Suede DNA comes from a third lineage: a fan-run website,{' '} + + guitargeek.com + + , that posted rig diagrams from the late 1990s onward, at a moment when doing this took + real effort. There was no universal video platform to point to. Building a rig diagram + meant sourcing a photo, cross-referencing gear against magazine features and forum + threads, and laying it out by hand, one artist at a time, for an audience that would + find it by searching or browsing rather than having it served up by an algorithm. Nobody + was paying for this work. It got done because enough people wanted a place where “what + did they actually play through” had an answer, and were willing to build that place + themselves. +

+

+ That collection was eventually preserved on the Internet Archive as{' '} + + the guitargeek-archives item + + , which is the direct upstream source for every rig photograph on this site. Suede DNA + did not create that material. It is a normalization and search layer over it, described + in full in Sourcing and Verification. But it inherits something from the lineage it sits on top of: the + diagram-as-document tradition was never an official record. It was maintained by people + who cared enough to keep it, using whatever format made that possible at the time: + hand-drawn charts, scanned magazine pages, a website built one entry at a time. +

+
+ + +

+ What ties the tech's patch list, the magazine feature, and the fan-run website + together is not format. It is the belief that a signal chain is worth writing down + because it is not obvious from listening. Two guitarists can describe the same tone in + completely different vocabulary; a diagram forces the ambiguity out. It says: this + guitar, into this pedal, into this amp, set here. It is a bad tool for describing feel, + phrasing, or a player's touch (those don't survive translation to a diagram at + all), but it is close to the best tool available for describing the physical chain + feel travels through. +

+

+ That is also the limit worth being honest about. A diagram, or a photo of a + pedalboard, tells you the hardware. It does not tell you how hard someone hit the + strings, how the room was mic'd, or what got adjusted between takes and never + written down anywhere. The form has always been partial. It has just been useful enough, + for long enough, that three separate communities kept producing it without ever agreeing + on a name for what they were doing. +

+
+
+ ); +} diff --git a/src/app/articles/the-unsung-link/page.tsx b/src/app/articles/the-unsung-link/page.tsx new file mode 100644 index 0000000..faf66d6 --- /dev/null +++ b/src/app/articles/the-unsung-link/page.tsx @@ -0,0 +1,140 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getArticle } from '@/lib/articles-content'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const SLUG = 'the-unsung-link'; +const article = getArticle(SLUG)!; + +export const metadata: Metadata = { + title: article.title, + description: article.description, + alternates: { canonical: `${SITE_URL}/articles/${SLUG}` }, + openGraph: { + title: `${article.title} — Suede DNA`, + description: article.description, + url: `${SITE_URL}/articles/${SLUG}`, + siteName: 'Suede DNA', + type: 'article', + publishedTime: article.date, + }, + twitter: { + card: 'summary_large_image', + title: `${article.title} — Suede DNA`, + description: article.description, + }, +}; + +function formatDate(iso: string) { + return new Date(`${iso}T00:00:00Z`).toLocaleDateString('en-US', { + year: 'numeric', + month: 'long', + day: 'numeric', + timeZone: 'UTC', + }); +} + +export default function ArticlePage() { + return ( + + +

+ Ask what gear made a tone, and the answer is almost always a guitar and an amp, maybe a + named pedal if one was doing something distinctive. That answer is not wrong. It is + incomplete in a specific and predictable way: it lists the parts of the signal chain + that are easy to see in a photo and easy to name in an interview, and it skips almost + everything that sits between them. A pedalboard photograph shows the pedals. It rarely + shows the power supply feeding them, the condition of the patch cables, or the order the + tech actually wired things in versus the order they are laid out on the board for looks. + None of that is a secret exactly. It is just the part of the chain nobody thinks to + photograph. +

+
+ + +

+ A 9V supply feeding a board full of pedals is one of the least interesting-looking + objects in a signal chain and one of the most consequential. Daisy-chaining several + high-gain pedals off a single unfiltered supply is a well-known way to introduce hum and + noise that has nothing to do with the pedals themselves. The fix is isolated power, not + a different pedal, and plenty of players have spent money chasing a “bad” + pedal that was actually a power problem. It is a useful reminder that a signal chain + diagram, which typically shows boxes connected by lines representing audio signal, is + quietly missing an entire second chain running underneath it: the power chain, which + affects the sound just as much and gets none of the attention. +

+
+ + +

+ A guitar cable is not a neutral wire. Longer cables and cheaper cables carry more + capacitance, which rolls off high frequencies before the signal even reaches the first + pedal. It is a real, measurable effect, and also one of the most argued-about topics in + guitar forums precisely because it is subtle enough to be genuinely debatable in a way a + distortion pedal is not. Most gear lists do not mention cable length or brand at all, + which means one real variable in the final tone is almost never recorded anywhere, on + this site or any other rig-documentation source. It is a small, honest gap worth naming + rather than pretending a diagram is more complete than it is. +

+
+ + +

+ For most of the electric guitar's history, powering a pedalboard meant a pile of + individual 9V batteries or a single daisy-chained adapter, and both had obvious + downsides: batteries die mid-set, and a shared unfiltered supply lets noise from one + pedal bleed into every other pedal on the chain. The fix, an isolated multi-output power + supply giving each pedal its own clean, separated feed, did not become a standard part + of a serious touring rig until relatively late in the pedalboard's history, once + boards grew crowded enough with high-gain and digital pedals that the noise problem + became impossible to ignore. It is a genuinely unglamorous piece of gear history: no + player has ever been asked in an interview what power supply they used, and yet the + answer quietly determines whether a big, ambitious pedalboard is usable on a stage at + all or plagued with a hum loud enough to hear between songs. +

+
+ + +

+ For a recorded tone specifically, as opposed to a live one, the guitar and amp are + arguably not even the last two links in the chain. Microphone choice and placement come + after them, and change the result more than most gear lists acknowledge. The same + amplifier, mic'd an inch off the speaker cone versus a foot back in the room, or + aimed dead center on the dust cap versus off toward the cone's edge, produces + audibly different recordings without a single setting on the amp changing. This is + common knowledge among recording engineers and almost never appears in a rig diagram, + because a rig diagram is drawn from the player's side of the signal chain and a + microphone belongs to the room, not the rig. It is one more reason a photograph of a + pedalboard, however well documented, is describing half a signal chain at most for + anything that made it onto a record. +

+
+ + +

+ None of this is an argument against documenting rigs. It is the opposite: an + argument for being precise about what a rig photo actually documents. A photograph shows + the guitar, the pedals, and usually the amp. It does not show the power supply + underneath the board, the cable running to the input jack, or the microphone that + captured whatever came out of the speaker. Every rig entry in this archive is exactly + that: real, useful, and partial. The same honesty applies to the tech-built patch sheets + and fan-run diagrams discussed in{' '} + + the history of the rig diagram as a form + + . Every version of this documentation tradition has recorded the visible chain and left + the invisible one to inference. Treating a rig photo as the complete explanation for a + tone is a small, common mistake. Treating it as a partial, honest record of what was + actually there (guitar, pedals, amp, and a great deal left unphotographed) is the more + useful way to read one. +

+
+
+ ); +} diff --git a/src/app/docs/faq/page.tsx b/src/app/docs/faq/page.tsx new file mode 100644 index 0000000..a4e2b6d --- /dev/null +++ b/src/app/docs/faq/page.tsx @@ -0,0 +1,99 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getStats } from '@/lib/manifest'; +import { JsonLd } from '@/components/seo/JsonLd'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const PATH = '/docs/faq'; + +export const metadata: Metadata = { + title: 'FAQ', + description: + 'Common questions about coverage, corrections, image rights, and how to reach the archive if something is wrong.', + alternates: { canonical: `${SITE_URL}${PATH}` }, + openGraph: { + title: 'FAQ — Suede DNA Docs', + description: + 'Common questions about coverage, corrections, image rights, and how to reach the archive if something is wrong.', + url: `${SITE_URL}${PATH}`, + siteName: 'Suede DNA', + type: 'article', + }, + twitter: { + card: 'summary_large_image', + title: 'FAQ — Suede DNA Docs', + description: + 'Common questions about coverage, corrections, image rights, and how to reach the archive if something is wrong.', + }, +}; + +const FAQS = [ + { + q: 'Where do the rig photos come from?', + a: 'The guitargeek-archives collection on the Internet Archive, a community-maintained compendium of guitarist rig diagrams. Suede DNA does not photograph rigs itself; it normalizes and indexes that upstream archive. Full detail in Sourcing and Verification.', + }, + { + q: 'Why isn’t [artist] in the archive?', + a: 'The archive documents 409 rigs from 390 artists: a sample of guitar history, not an exhaustive one. An artist’s absence reflects what the upstream collection happened to document, not a judgment about their significance.', + }, + { + q: 'Why does an artist only have one or two rigs when they had a decades-long career?', + a: 'Coverage depends entirely on what was documented and preserved upstream. Some artists have a single photographed rig from one tour; others have several spread across years. The DNA chain on an artist page shows exactly what is documented. Nothing is extrapolated to fill gaps.', + }, + { + q: 'Does Suede DNA tell me the exact pedals and settings in a photo?', + a: 'No. The site does not transcribe gear lists or signal chains from the images. Each rig is presented as the photograph, the year, the artist, and a link to the upstream source. Reading the actual gear out of a photo is left to you.', + }, + { + q: 'I found a wrong year, wrong artist, or broken image. How do I report it?', + a: 'Message @aisuede on X or email info@suedeai.org. Corrections are applied through data/overrides.json without altering the underlying image.', + }, + { + q: 'Can I use a rig image from the archive?', + a: 'Images remain the property of their original creators and are surfaced here in the same archival, citation-friendly spirit as the upstream archive.org collection. If you reference a rig elsewhere, credit the guitargeek-archives collection (and the original photographer or documenter where known). See the About page for full attribution language.', + }, + { + q: 'Is this an official or authorized source for any artist’s gear history?', + a: 'No. Suede DNA is an independent compilation project, not affiliated with the artists, their labels, or their gear manufacturers.', + }, + { + q: 'How is the archive kept up to date?', + a: 'The manifest is regenerated from the upstream source with a build script and gated by a schema-validation step before it ships. New rigs enter the archive when they enter the upstream collection and get normalized in a refresh.', + }, + { + q: 'Is there an API?', + a: 'Not currently. The canonical dataset lives in data/rigs.json in the project’s open-source repository on GitHub.', + }, +]; + +const faqJsonLd = { + '@context': 'https://schema.org', + '@type': 'FAQPage', + mainEntity: FAQS.map((item) => ({ + '@type': 'Question', + name: item.q, + acceptedAnswer: { '@type': 'Answer', text: item.a }, + })), +}; + +export default function FaqPage() { + const stats = getStats(); + return ( + + + +

+ Quick answers below. For the longer explanations, see{' '} + What Suede DNA Is and{' '} + Sourcing and Verification. +

+
+ + {FAQS.map((item) => ( + +

{item.a}

+
+ ))} +
+ ); +} diff --git a/src/app/docs/page.tsx b/src/app/docs/page.tsx new file mode 100644 index 0000000..0ae38a5 --- /dev/null +++ b/src/app/docs/page.tsx @@ -0,0 +1,68 @@ +import type { Metadata } from 'next'; +import Link from 'next/link'; +import { DOCS } from '@/lib/docs-content'; +import { IndexCard } from '@/components/docs/IndexCard'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; + +export const metadata: Metadata = { + title: 'Docs', + description: + 'How Suede DNA is built: sourcing, the manifest pipeline, search syntax, and answers to common questions about the archive.', + alternates: { canonical: `${SITE_URL}/docs` }, + openGraph: { + title: 'Docs — Suede DNA', + description: + 'How Suede DNA is built: sourcing, the manifest pipeline, search syntax, and answers to common questions about the archive.', + url: `${SITE_URL}/docs`, + siteName: 'Suede DNA', + type: 'website', + }, + twitter: { + card: 'summary_large_image', + title: 'Docs — Suede DNA', + description: + 'How Suede DNA is built: sourcing, the manifest pipeline, search syntax, and answers to common questions about the archive.', + }, +}; + +export default function DocsIndexPage() { + return ( +
+

SUEDE/DNA / DOCS

+

+ Documentation. +

+

+ Reference material on how the archive is built, sourced, and searched. For the short + version, see the{' '} + + about page + + . For the long version, start here. +

+ +
+ {DOCS.map((doc) => ( + + ))} +
+ + + ← BACK TO THE COMPILATION + +
+ ); +} diff --git a/src/app/docs/search-and-filters/page.tsx b/src/app/docs/search-and-filters/page.tsx new file mode 100644 index 0000000..8e752d0 --- /dev/null +++ b/src/app/docs/search-and-filters/page.tsx @@ -0,0 +1,127 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection } from '@/components/docs/PageShell'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const PATH = '/docs/search-and-filters'; + +export const metadata: Metadata = { + title: 'Search and Filters', + description: + 'How the search box parses names, years, and decades, how ranking works, and how decade filters and sort order combine.', + alternates: { canonical: `${SITE_URL}${PATH}` }, + openGraph: { + title: 'Search and Filters — Suede DNA Docs', + description: + 'How the search box parses names, years, and decades, how ranking works, and how decade filters and sort order combine.', + url: `${SITE_URL}${PATH}`, + siteName: 'Suede DNA', + type: 'article', + }, + twitter: { + card: 'summary_large_image', + title: 'Search and Filters — Suede DNA Docs', + description: + 'How the search box parses names, years, and decades, how ranking works, and how decade filters and sort order combine.', + }, +}; + +function Kbd({ children }: { children: string }) { + return ( + + {children} + + ); +} + +export default function SearchAndFiltersPage() { + return ( + + +

+ The search box on the home page reads a single string but understands two different + things inside it: artist-name text and year expressions. It splits a query into those + two parts before doing anything else, so hendrix 1968 filters to rigs from + 1968 and then ranks by how well the remaining text matches an artist name. +

+
+ + +

The parser recognizes several year and range formats inside the same query:

+
    +
  • + 1966-1969 or 1966 to 1969: an explicit range (en dash and em + dash both work). +
  • +
  • + 1975: an exact year. +
  • +
  • + 90s or 1990s: a full decade. +
  • +
  • + '72: a two-digit year (resolved to 1900s or 2000s depending on the + value). +
  • +
  • + before 1980, after 1980, since 1980,{' '} + until 1980, from 1980: open-ended ranges. +
  • +
  • + <1980, <=1980, >1980,{' '} + >=1980: the same open-ended ranges, comparison-operator style. +
  • +
+

+ Multiple year expressions in one query are combined. An artist must satisfy every + range mentioned, not just one of them. Years are matched against an artist's full + documented range (their earliest to latest rig), so a query for a single year will + surface an artist whose overall range spans that year even if no individual rig lands + exactly on it; the rig grid itself still only shows rigs from years that satisfy the + query. +

+
+ + +

+ Whatever text is left after year expressions are stripped out is matched against artist + names and a small alias table (for cases like abbreviations or alternate spellings). + Matching is diacritic-insensitive and punctuation-insensitive, and it tolerates minor + typos through a bounded edit-distance check: short queries need an exact or near-exact + token match, longer queries get a little more slack. +

+

+ Results are ranked, not just filtered: an exact name match scores highest, a + name that starts with the query scores next, a match on a whole word scores above a + match buried mid-string, and so on down to fuzzy token matches. A query that is only a + year expression, with no text, switches the result list to chronological order instead + of relevance order. +

+
+ + +

+ Independent of the search box, the filter rail exposes decade toggles (multi-select) and + a sort order: name, earliest year first, or latest year first. Decade filters and search + text combine: turning on a decade toggle narrows the pool of artists before the search + query is scored against it. +

+

+ All of this round-trips through the URL as query parameters:{' '} + ?q= for the search text,{' '} + ?decades= for a comma-separated list of decade + years, and ?sort= for the sort order, so a + filtered view is a link you can share or bookmark. +

+
+ + +

+ Press / or ⌘K / Ctrl K from anywhere on the page to + jump focus to the search box, and Esc while focused to clear it. When a query + returns no results, the site shows suggested near-matches drawn from the same ranking + logic that powers normal search, rather than a dead end. +

+
+
+ ); +} diff --git a/src/app/docs/sourcing-and-verification/page.tsx b/src/app/docs/sourcing-and-verification/page.tsx new file mode 100644 index 0000000..db85240 --- /dev/null +++ b/src/app/docs/sourcing-and-verification/page.tsx @@ -0,0 +1,117 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const PATH = '/docs/sourcing-and-verification'; + +export const metadata: Metadata = { + title: 'Sourcing and Verification', + description: + 'Where the rig photos come from, how the manifest is built and validated, and exactly what Suede DNA does and does not verify.', + alternates: { canonical: `${SITE_URL}${PATH}` }, + openGraph: { + title: 'Sourcing and Verification — Suede DNA Docs', + description: + 'Where the rig photos come from, how the manifest is built and validated, and exactly what Suede DNA does and does not verify.', + url: `${SITE_URL}${PATH}`, + siteName: 'Suede DNA', + type: 'article', + }, + twitter: { + card: 'summary_large_image', + title: 'Sourcing and Verification — Suede DNA Docs', + description: + 'Where the rig photos come from, how the manifest is built and validated, and exactly what Suede DNA does and does not verify.', + }, +}; + +export default function SourcingPage() { + return ( + + +

+ Every photograph in Suede DNA originates from{' '} + + the guitargeek-archives item + {' '} + on the Internet Archive, a community-maintained compendium of guitarist rig diagrams + built up over years, much of it originally surfaced through guitargeek.com and related + rig-documentation communities. Suede DNA does not photograph rigs, does not commission + photography, and does not re-host the underlying images on its own infrastructure. Rig + images are served directly from{' '} + archive.org/download/guitargeek-archives/. +

+

+ What Suede DNA adds is a presentation, normalization, and search layer over that + upstream collection, not a re-publication of new material. +

+
+ + +

+ The canonical dataset is data/rigs.json, built + by a script (scripts/build-manifest.ts) that + parses upstream filenames against a known grammar,{' '} + artist_guitar_rig_year.ext, and produces a + flat list of rig records: an id, an artist slug, a year, a source URL, and a file + format. A companion script ( + scripts/validate-manifest.ts) checks the + manifest's schema and integrity before every build; a broken or malformed manifest + fails the build rather than shipping. +

+

+ Two small hand-maintained files sit on top of the automated parse:{' '} + data/overrides.json, which corrects display + names where the upstream filename grammar is ambiguous or abbreviated (turning{' '} + ac_dc into{' '} + AC/DC, for instance), and{' '} + data/excluded.json, a short list of items + intentionally left out, mostly upstream files that returned an error status when + fetched and could not be resolved to a valid image. +

+
+ + +

+ It is worth being precise here, because “verified” can mean very different + things. The manifest pipeline verifies structure: that a rig record has a valid artist, + a plausible year, a working source URL, and a consistent id. It does not verify content. + Suede DNA does not interpret what is inside a rig photo. There is no gear-list + reconstruction, no signal-chain transcription, no cross-referencing against interviews + or magazine features. Each rig is presented as the source document it is: one archival + photo, one year, one artist, and a link back to the upstream file. The compilation is + the value here, not an editorial interpretation layered on top of it. +

+

+ That also means Suede DNA does not independently fact-check the accuracy of the + upstream archive itself. If a photo in guitargeek-archives was mislabeled with the wrong + year or the wrong artist before it reached this site, that error can carry through. The{' '} + overrides.json file exists specifically to + catch and correct cases like that as they are found. It is a living correction log, not + a guarantee that every record is error-free. +

+
+ + +

+ The archive documents 409 rigs across 390 artists. That is a meaningful sample of + guitar history, not an exhaustive one. Many artists have no entry at all; many who do + have only one or two documented years out of a much longer career. Absence from the + archive says nothing about an artist's significance. It only reflects what the + upstream guitargeek-archives collection happened to document and what has been + normalized into the manifest so far. +

+
+ + +

+ If you find a misattributed rig, a wrong year, or a broken image, the fastest path to a + fix is @aisuede on X or{' '} + info@suedeai.org. Corrections are + applied through data/overrides.json. The + underlying image is never edited or re-hosted, only the metadata around it. +

+
+
+ ); +} diff --git a/src/app/docs/what-is-suede-dna/page.tsx b/src/app/docs/what-is-suede-dna/page.tsx new file mode 100644 index 0000000..626922e --- /dev/null +++ b/src/app/docs/what-is-suede-dna/page.tsx @@ -0,0 +1,96 @@ +import type { Metadata } from 'next'; +import { PageShell, DocSection, SuedeLink } from '@/components/docs/PageShell'; +import { getStats } from '@/lib/manifest'; + +const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; +const PATH = '/docs/what-is-suede-dna'; + +export const metadata: Metadata = { + title: 'What Suede DNA Is', + description: + 'The premise behind the archive: why a guitarist’s rigs form a signal chain across time, and how the site is structured around that idea.', + alternates: { canonical: `${SITE_URL}${PATH}` }, + openGraph: { + title: 'What Suede DNA Is — Suede DNA Docs', + description: + 'The premise behind the archive: why a guitarist’s rigs form a signal chain across time, and how the site is structured around that idea.', + url: `${SITE_URL}${PATH}`, + siteName: 'Suede DNA', + type: 'article', + }, + twitter: { + card: 'summary_large_image', + title: 'What Suede DNA Is — Suede DNA Docs', + description: + 'The premise behind the archive: why a guitarist’s rigs form a signal chain across time, and how the site is structured around that idea.', + }, +}; + +export default function WhatIsSuedeDnaPage() { + const stats = getStats(); + return ( + + +

+ Suede DNA is a compilation archive of guitarists' rigs. Right now it holds{' '} + {stats.totalRigs} documented setups across {stats.totalArtists} artists, spanning{' '} + {stats.yearMin}–{stats.yearMax}. Each entry is a photograph of a rig: the guitar, the + amp, the pedals, sometimes a rack, tied to an artist and a year. +

+

+ The idea underneath the site is simple: a guitarist's tone is not one fixed thing. It + changes as they change instruments, amps, and effects, sometimes within the same tour. + Line up every documented rig for one artist in chronological order and you get + something closer to a genealogy than a single snapshot: a signal chain stretched + across a career instead of frozen at one moment. +

+
+ + +

+ The site is built around two ways of looking at that idea. +

+

+ The compilation grid on the home page is the + discovery view: every rig in the archive, grouped by artist, sortable and filterable by + decade and year. It is meant for browsing: scroll, search, or jump straight to a + letter with the A–Z rail. +

+

+ Each artist page is the genealogy view. Rigs for + that artist are laid out on a horizontal timeline (the “DNA chain”) joined by a + single strand, in year order, with a specimen card underneath each one. If an artist has + three documented rigs across a decade, the artist page is the closest thing on the site + to watching their tone evolve. +

+
+ + +

+ Suede DNA is not a gear-list encyclopedia, and it does not claim to catalog every piece + of equipment an artist ever used. It is not an editorial publication with staff writers + reporting on rigs firsthand. It does not transcribe signal chains from the photographs; + see{' '} + Sourcing and Verification for + exactly what the archive does and does not verify. And it is not a retail or + affiliate-driven gear site. There is nothing to buy here, only the record. +

+

+ What it is: a fast, searchable, citation-friendly index over a much older community + archive, presented in a way that makes the “career as signal chain” framing + visible at a glance. +

+
+ + +

+ Musicians researching a specific era of an artist's tone. Students of gear history + looking for a starting point before going deeper. Anyone who has ever looked at a live + photo and wondered what that pedal on the floor actually was. The archive does not + answer every question (often it only gives you the photo and the year), but it is + built so that question is easy to ask. +

+
+
+ ); +} diff --git a/src/app/sitemap.ts b/src/app/sitemap.ts index 3af311a..8b05fc2 100644 --- a/src/app/sitemap.ts +++ b/src/app/sitemap.ts @@ -1,5 +1,7 @@ import type { MetadataRoute } from 'next'; import { getAllArtists } from '@/lib/manifest'; +import { DOCS } from '@/lib/docs-content'; +import { ARTICLES } from '@/lib/articles-content'; import rigsManifest from '../../data/rigs.json'; const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://dna.suedeai.ai'; @@ -9,6 +11,20 @@ export default function sitemap(): MetadataRoute.Sitemap { return [ { url: `${SITE_URL}/`, lastModified, changeFrequency: 'monthly', priority: 1.0 }, { url: `${SITE_URL}/about`, lastModified, changeFrequency: 'yearly', priority: 0.5 }, + { url: `${SITE_URL}/docs`, lastModified, changeFrequency: 'monthly', priority: 0.6 }, + ...DOCS.map((doc) => ({ + url: `${SITE_URL}/docs/${doc.slug}`, + lastModified, + changeFrequency: 'monthly' as const, + priority: 0.6, + })), + { url: `${SITE_URL}/articles`, lastModified, changeFrequency: 'weekly', priority: 0.6 }, + ...ARTICLES.map((article) => ({ + url: `${SITE_URL}/articles/${article.slug}`, + lastModified: new Date(`${article.date}T00:00:00Z`), + changeFrequency: 'yearly' as const, + priority: 0.6, + })), ...getAllArtists().map((a) => ({ url: `${SITE_URL}/${a.slug}`, lastModified, diff --git a/src/components/docs/IndexCard.tsx b/src/components/docs/IndexCard.tsx new file mode 100644 index 0000000..ca64cb9 --- /dev/null +++ b/src/components/docs/IndexCard.tsx @@ -0,0 +1,30 @@ +import Link from 'next/link'; + +export function IndexCard({ + href, + eyebrow, + title, + description, +}: { + href: string; + eyebrow: string; + title: string; + description: string; +}) { + return ( + +

{eyebrow}

+

+ {title} +

+

{description}

+ + READ → + + + ); +} diff --git a/src/components/docs/PageShell.tsx b/src/components/docs/PageShell.tsx new file mode 100644 index 0000000..78f9104 --- /dev/null +++ b/src/components/docs/PageShell.tsx @@ -0,0 +1,74 @@ +import Link from 'next/link'; +import type { ReactNode } from 'react'; + +export function PageShell({ + eyebrow, + title, + lede, + meta, + children, + backHref = '/', + backLabel = '← BACK TO THE COMPILATION', + maxWidth = '800px', +}: { + eyebrow: string; + title: string; + lede?: ReactNode; + meta?: ReactNode; + children: ReactNode; + backHref?: string; + backLabel?: string; + maxWidth?: string; +}) { + return ( +
+

{eyebrow}

+

+ {title} +

+ {meta ?
{meta}
: null} + {lede ? ( +

+ {lede} +

+ ) : null} + +
+ {children} +
+ + + {backLabel} + +
+ ); +} + +export function DocSection({ heading, children }: { heading: string; children: ReactNode }) { + return ( +
+

{heading}

+
{children}
+
+ ); +} + +export function SuedeLink({ href, children }: { href: string; children: ReactNode }) { + const external = href.startsWith('http'); + return ( + + {children} + + ); +} diff --git a/src/components/footer/Footer.tsx b/src/components/footer/Footer.tsx index 89811d4..60d1996 100644 --- a/src/components/footer/Footer.tsx +++ b/src/components/footer/Footer.tsx @@ -41,6 +41,12 @@ export function Footer() { METHOD → + + DOCS → + + + ARTICLES → + window.removeEventListener('scroll', update); }, []); - const currentPage = pathname === '/about' ? 'ABOUT' : 'DNA'; + const currentPage = + pathname === '/about' + ? 'ABOUT' + : pathname?.startsWith('/docs') + ? 'DOCS' + : pathname?.startsWith('/articles') + ? 'ARTICLES' + : 'DNA'; return (
article.slug === slug); +} diff --git a/src/lib/docs-content.ts b/src/lib/docs-content.ts new file mode 100644 index 0000000..7e92c35 --- /dev/null +++ b/src/lib/docs-content.ts @@ -0,0 +1,36 @@ +export type DocEntry = { + slug: string; + title: string; + description: string; +}; + +export const DOCS: DocEntry[] = [ + { + slug: 'what-is-suede-dna', + title: 'What Suede DNA Is', + description: + 'The premise behind the archive: why a guitarist’s rigs form a signal chain across time, and how the site is structured around that idea.', + }, + { + slug: 'sourcing-and-verification', + title: 'Sourcing and Verification', + description: + 'Where the rig photos come from, how the manifest is built and validated, and exactly what Suede DNA does and does not verify.', + }, + { + slug: 'search-and-filters', + title: 'Search and Filters', + description: + 'How the search box parses names, years, and decades, how ranking works, and how decade filters and sort order combine.', + }, + { + slug: 'faq', + title: 'FAQ', + description: + 'Common questions about coverage, corrections, image rights, and how to reach the archive if something is wrong.', + }, +]; + +export function getDoc(slug: string): DocEntry | undefined { + return DOCS.find((doc) => doc.slug === slug); +}