Dover Run Club — Website Roadmap
Created: February 14, 2026
Current State (Phase 1)
The site is a single-page website focused on the essentials:
- What: Dover Run Club — a casual, social running group
- When: Every Tuesday at 6 PM
- Where: The Brick, Dover, NH
- Vibe: All paces welcome, with an optional post-run hang at The Brick
What’s Live
- Homepage with club info, schedule, About section, and run-first/optional-hang messaging
- First official run club photo added to homepage using responsive image variants (
DCR_20260310-400.jpg,DCR_20260310-800.jpg,DCR_20260310-1200.jpg) our-story.md— Dover running community history & SIX03 roots (linked from homepage “Our Roots” section, but not in main navigation)- Contact section on homepage with dedicated email plus Facebook group, Instagram, and Strava links
- Custom CSS with responsive design
- Hosted on GitHub Pages
What’s Hidden (pages exist but are not linked)
events.md— Generic event/race calendar (placeholder content)pub-runs.md— Pub run details page (placeholder content)membership.md— Membership tiers & sign-up (placeholder content)sponsors.md— Sponsor recognition page (placeholder content)
These pages are kept in the repo for future development but are not in the navigation and not linked from anywhere on the site.
Decisions Made
| Decision | Choice | Reasoning |
|---|---|---|
| Club name | Dover Run Club | Clear, local identity — not tied to any business name |
| Site structure | Single page (home only) | Keep it simple; don’t expose unfinished pages |
| Tone | Casual & fun | Matches the social pub-run culture of the group |
| Six03 Endurance | Not prominently featured | Club has its own identity; affiliation may be added later |
| Membership/fees | Not applicable for now | No membership structure currently needed |
Future Ideas
These are things we may want to add down the road. Nothing here is committed — just ideas to revisit when the time is right.
Canonical Idea Backlog
This file is the canonical source-of-truth for website enhancement ideas and TODO status.
When adding a new idea, use this format:
- Title:
- Why now:
- Scope (in):
- Scope (out):
- Priority: P1 / P2 / P3
- Effort: S / M / L
- Acceptance signals:
- Status: Proposed / Planned / In Progress / Done
Ideas can be generated by the idea agent, planned by the planning agent, implemented by the implementation agent, and validated by the verify agent.
- Title: Add “Common Routes” Data-Driven Section to Homepage
- Why now: A club leader requested a way to easily display and manage common running routes (maps/pictures, turn-by-turn descriptions, Strava links) without needing to touch complex HTML.
- Scope (in): Create a Jekyll data file (
_data/routes.yml) to store route metadata (name, description, image, Strava URL). Add a new “Common Routes” section toindex.mdthat iterates over this data. Design basic CSS cards for the routes. - Scope (out): Interactive embedded Strava maps (sticking to images for performance and simplicity); separate dedicated routes page (respecting Phase 1 single-page architecture).
- Priority: P1
- Effort: M
- Acceptance signals: A new section appears on the homepage displaying at least one sample route card with an image, text, and working Strava link. Data is driven entirely by
_data/routes.yml. -
Status: In Progress
- Title: Add Member-Contributed “Alternate Routes” Section
- Why now: Kevin’s KSL community trail route images are already in the repo and ready to display. Alison’s routes are incoming.
- Scope (in): New
_data/member_routes.ymldata file; new “Alternate Routes” section onindex.mdusing the same card layout as Common Routes;contributed_byfield in each route entry to credit members. - Scope (out): Member-facing upload/submission mechanism; separate dedicated routes page; changes to
_data/routes.ymlor Common Routes section. - Priority: P1
- Effort: S
- Acceptance signals: “Alternate Routes” section renders on homepage below “Common Routes” with Kevin’s 3 route cards visible;
member_routes.ymldrives the content;contributed_bycredit appears on each card. -
Status: Done
- Title: Brand Color Palette Overhaul — Forest & Gold Light Theme (Superseded)
- Why now: The current dark “Masculine Sunset” theme (navy/purple/orange) does not reflect the club’s evolving brand identity. A new palette was initially defined: Deep Forest Green (
#1F4D3A), Slate Blue (#4A6FA5), Warm Off-White (#F7F5F2), Stone Gray (#6E6E6E), Golden accent (#D9A441), but this Forest & Gold light theme concept was later superseded by the Navy & Teal dark theme actually implemented inassets/css/main.css. - Scope (in): Replace all
:rootCSS variables inassets/css/main.csswith new palette values. Update body background from animated dark gradient to solid#F7F5F2. Rework header/footer gradients to Forest Green base. Flip text colors to dark-on-light. Update card/page section backgrounds for light theme. Adjust all hover/glow/shadow effects for light-background context. Update cookie notice styling. Validate contrast ratios meet WCAG AA. Update the CSS file’s top comment/theme name. - Scope (out): Font family changes (keep Bebas Neue + Roboto). Layout or structural HTML changes. Adding new CSS classes or HTML elements. Changes to Markdown content files.
- Priority: P1
- Effort: M
- Acceptance signals: All
:rootvariables use the new palette. Page background is warm off-white. Header and footer use Forest Green. Body text is Stone Gray. Accent color is Golden. Cards and sections are legible on light background. No leftover orange/navy/purple color references. Cookie notice styled consistently. Responsive breakpoints still function. Contrast passes WCAG AA for body text and headings. -
Status: Superseded
- Title: Visual Striking Enhancements — Dark Hero, Glow Effects, Golden Dividers
- Why now: After initial palette overhaul, the light theme felt too flat. Three targeted enhancements restore visual drama while staying on-palette.
- Scope (in): Dark Forest Green hero banner with radial gradient background, off-white text, and golden tagline glow. Golden accent borders on header and footer. Hover glow effects (golden box-shadow) on cards, route cards, buttons, and links. Golden
<hr>section dividers between hero/cards and cards/content. Golden border frame on hero image. - Scope (out): Animated backgrounds. New colors outside the established palette. Font or layout changes. Content edits beyond adding
<hr>dividers. - Priority: P1
- Effort: S
- Acceptance signals: Hero section has dark green background with off-white text. Tagline glows golden. Cards and route cards show golden glow on hover. Golden divider lines appear between major sections. Header and footer have golden accent borders. Hero image has golden border. All changes preserve responsive behavior.
-
Status: Done
- Title: Integrate drc-tower Logo in Site Header
- Why now: The
drc-tower.pngimage is already in the repo atassets/images/drc-tower.pngand has been chosen as the initial club logo. It should appear in the header alongside the site title to establish visual brand identity. - Scope (in): Add an
<img>element fordrc-tower.pnginside_includes/header.htmlnext to the site title. Add CSS for logo sizing, alignment, and responsive scaling. Ensure the logo complements the new Forest & Gold palette (may need a white/transparent background treatment depending on the image). - Scope (out): Creating new image variants or resizing the source file. Moving or replacing the hero group photo. Adding the logo to the footer or favicon (separate future items).
- Priority: P1
- Effort: S
- Acceptance signals: Logo image (
drc-tower.png) renders in the header on all viewport widths. Logo is sized appropriately (not oversized on mobile, not tiny on desktop). Logo links to homepage. Image has descriptivealttext. Layout does not break at any responsive breakpoint. -
Status: Done
- Title: Add Mailchimp Email Marketing Integration
- Why now: To allow the club to start building an email list for newsletters/announcements.
- Scope (in): Add the standard Mailchimp performance/tracking snippet to the site’s global
<head>behind amailchimp_enabledconfig flag. Add a minimal cookie/privacy notice in the site footer. - Scope (out): Design of actual pop-ups or forms (managed in Mailchimp UI).
- Priority: P2
- Effort: S
- Acceptance signals: Mailchimp script is present in the site’s head when
mailchimp_enabled: truein_config.yml. Cookie notice is visible on the site. -
Status: Done
- Title: Add Merchandise Store Link
- Why now: The club has launched a Printful merch store and wants to make it discoverable from the website without being salesy.
- Scope (in): Add
merch_urlconfig variable to_config.yml. Add conditional “Shop” link to footer link bar. Add conditional “Merch” bullet to homepage “Stay in Touch” section. Both degrade gracefully when the variable is blank or absent. - Scope (out): Dedicated merch page; embedded product previews; any CSS additions.
- Priority: P2
- Effort: S
- Acceptance signals: “Shop” link appears in footer and “Merch” bullet appears in “Stay in Touch” section; both link to the Printful store; removing
merch_urlfrom config causes both to disappear;jekyll buildpasses cleanly. -
Status: Done
- Title: SVG Logo Integration with Favicon Set
- Why now: The new DRC-FinalLogo.svg brand mark has been created and needs to be the canonical logo across the site — header, favicon, and SEO metadata.
- Scope (in): Replace header logo PNG with SVG. Add SVG-first favicon strategy with PNG fallbacks. Update SEO logo config. Create PowerShell favicon generation script. Create image-asset-management skill.
- Scope (out): Web app manifest (PWA). Deleting legacy drc-tower.png/jpg files. Footer logo placement.
- Priority: P1
- Effort: M
- Acceptance signals: SVG logo renders in header at all viewports. SVG favicon appears in browser tab. PNG fallback favicons exist in assets/images/favicons/. SEO logo references SVG. Generate-Favicons.ps1 script works end-to-end. image-asset-management skill documented.
-
Status: Done
- Title: Add Photo Gallery Page
- Why now: To visually showcase club events, member accomplishments, and community spirit without cluttering the Phase 1 homepage.
- Scope (in): Create a dedicated
gallery.mdpage with CSS Grid layout. Store photo metadata (image, caption, date) in_data/gallery.yml. Update homepage’s Photos section to show a 2-photo preview linking to the full gallery. - Scope (out): Automated photo uploads, lightbox popups, adding gallery to main site navigation (stays hidden per Phase 1 rules).
- Priority: P2
- Effort: M
- Acceptance signals:
gallery.mdrenders a responsive grid of photos with captions. Homepage shows 2 recent photos and a “View Full Gallery” button. Mobile layout works perfectly. - Status: Done
Near-Term (when ready)
📸 Photos
- Status: Hero image added (
run-club-group-photo.jpgon homepage, with responsive variantsrun-club-group-photo-400.jpg,run-club-group-photo-800.jpg,run-club-group-photo-1200.jpg) - Add a full photo gallery or photo section to the homepage
- Could be a grid of images from Tuesday runs
- Consider hosting images in
/assets/images/or linking from an external service
🔗 Additional Social Media Links
- Status: Facebook, Strava, and Instagram live
- Footer includes links to Strava, the Dover Run Club Facebook group, and Instagram
- Homepage “Stay in Touch” section includes Facebook group, Instagram, Strava, and contact email
🏃 Homepage Copy Balance
- Status: Done
- Homepage copy now emphasizes The Brick as the Tuesday meetup spot and makes the post-run hang optional
- Top-of-page messaging, About copy, and expectations section all welcome runners who come just for the run
🧭 Admin Ops Readiness Checklist
- Status: Live (planning artifact)
- Checklist added at
design/pub-run-ops-readiness-checklist.md - Covers inbox ownership, moderation cadence, safety escalation, and simple partner inquiry handling
📖 Our Story Page
- Status: Live (linked from homepage, hidden from nav)
- Standalone page honors SIX03 roots and Dover running community history
- Currently linked from homepage “Our Roots” section
- Page accessible at
/our-story.htmlbut not in main navigation - Ready to add to nav when moving beyond Phase 1 single-page approach
- See
design/homage.mdfor source content and alternative versions
Medium-Term (if there’s demand)
🗺️ Routes Page
- Showcase the variety of routes the club runs on Tuesdays
- Could include maps, distances, descriptions
- Possible integration with Strava or MapMyRun links
🏪 Six03 Endurance Affiliation
- If the relationship is formalized, add a “Affiliated with Six03 Endurance” mention
- Could be a logo in the footer or a small section on the homepage
- Link to their website
📅 Events Page
- Activate the Events page when there are real events to list
- Group races, seasonal runs, special events
- Currently has placeholder content in
events.md
Longer-Term (if the club grows)
🍺 Pub Runs Page
- If the club expands beyond Tuesdays or beyond The Brick
- Multiple locations, rotating schedule, partner pub info
- Currently has placeholder content in
pub-runs.md
🤝 Membership Page
- Only if the club ever formalizes membership (dues, perks, etc.)
- Currently has placeholder content in
membership.md
💼 Sponsors Page
- If local businesses want to sponsor or be recognized
- Tiered sponsorship structure already templated in
sponsors.md
🌐 Custom Domain
- Register and configure a custom domain (e.g.,
doverrunclub.com) - CNAME file is already in the repo (currently commented out)
- DNS setup instructions in
GITHUB_PAGES_SETUP.md
Technical Notes
- Framework: Jekyll, hosted on GitHub Pages
- Theme: Custom CSS (Minima declared in config but fully overridden)
- Layouts:
default.html(base),page.html(content pages) - Hidden pages are still accessible via direct URL (e.g.,
/events.html) but aren’t discoverable through navigation. If this is a concern, they can be added to theexcludelist in_config.yml.