LiNK prototype — developer index

Component styleguide Open the site

Developer index

Every page in the LiNK prototype, grouped by surface. Generated by scanning the folder — each row reads the page’s own <title> and robots meta, so this index cannot drift from what actually exists.

[ INTERNAL — not client-facing, noindex, and excluded from sitemap.xml. Most signed-in and staff screens are deliberately unreachable from the homepage; this page is how you get to them. ]

47 pages 30 indexable 17 noindex

Public marketplace

11 pages

Public marketplace pages
Page Robots Size
About LiNK — Real Estate Without the Middleman about.html indexed 990 words
How to Buy a House Without a Realtor buy.html indexed 1,501 words
Concierge Services — Full Support Selling concierge.htmlPublic tier selection. Pricing from the client comp — unconfirmed. indexed 962 words
Contact LiNK — Support, Live Chat & Call Back contact.htmlRebuilt to Christine's 2026-07-20 spec. Try the submit — it swaps to the confirmation state. indexed 1,881 words
FAQ — Selling & Buying Without an Agent faq.htmlCarries the anchored account questions contact.html deep-links to. indexed 1,774 words
How to Sell Your House Without a Realtor how-it-works.html indexed 3,367 words
For Sale By Owner — Buy & Sell Without Realtor Fees index.htmlHomepage. Hero matches garza.link; image-gate cross-fade below. indexed 1,055 words
Sample Closing Attorneys, PLC — Real Estate Services, Richmond VA provider.html indexed 886 words
Houses for Sale in Richmond, VA — No Commissions search.htmlLive facets + Leaflet map, always in sync (one matching engine). indexed 1,431 words
Sell My House Without a Realtor sell.html indexed 1,286 words
Find Real Estate Professionals in Richmond, VA services.html indexed 945 words

Property detail pages

18 pages

Property detail pages pages
Page Robots Size
11 S Belmont Ave, Richmond VA — $342,000 listing-11-s-belmont-ave.html indexed 1,259 words
1204 Westover Hills Blvd, Richmond VA — $455,000 listing-1204-westover-hills-blvd.html indexed 1,225 words
1214 Rothsay Cir, Richmond VA — $425,000 listing-1214-rothsay-cir.html indexed 1,223 words
1310 Bellevue Ave, Richmond VA — $379,900 listing-1310-bellevue-ave.html indexed 1,224 words
13905 Midlothian Tpke, Richmond VA — $549,000 listing-13905-midlothian-tpke.html indexed 1,221 words
1400 Summit Ave, Richmond VA — $274,500 listing-1400-summit-ave.html indexed 1,218 words
1801 Grove Ave, Richmond VA — $615,000 listing-1801-grove-ave.html indexed 1,221 words
2201 E Broad St, Richmond VA — $298,000 listing-2201-e-broad-st.html indexed 1,222 words
2416 Winterfield Rd, Richmond VA — $692,000 listing-2416-winterfield-rd.html indexed 1,223 words
2809 Hanes Ave, Richmond VA — $289,000 listing-2809-hanes-ave.html indexed 1,222 words
3010 W Clay St, Richmond VA — $318,000 listing-3010-w-clay-st.html indexed 1,215 words
3300 Monument Ave, Richmond VA — $749,000 listing-3300-monument-ave.html indexed 1,247 words
4120 Grove Ave, Richmond VA — $468,000 listing-4120-grove-ave.html indexed 1,255 words
4417 Kensington Ave, Richmond VA — $512,000 listing-4417-kensington-ave.html indexed 1,240 words
506 N 32nd St, Richmond VA — $232,500 listing-506-n-32nd-st.html indexed 1,230 words
5501 Riverside Dr, Richmond VA — $825,000 listing-5501-riverside-dr.html indexed 1,233 words
715 N 25th St, Richmond VA — $264,900 listing-715-n-25th-st.html indexed 1,231 words
908 Hanover Ave, Richmond VA — $389,500 listing-908-hanover-ave.html indexed 1,225 words

Account

3 pages

Account pages
Page Robots Size
Log In to LiNK login.htmlChristine 2026-07-20. Log in only. SSO, MFA, 5 error states, recovery, devices. noindex 2,318 words
My Profile — Account Settings profile.htmlChristine 2026-07-20. Role-conditional — use the chips to switch role. noindex 2,649 words
Create Your LiNK Account register.htmlSplit out of login.html 2026-08-12 — the header's Sign Up CTA had no page of its own. indexed 1,553 words

Seller dashboard

11 pages

Seller dashboard pages
Page Robots Size
My Concierge Service dashboard-seller-concierge.htmlNo client spec — proposal. Customer-visible fields only (Rule 9). noindex 1,092 words
Insights — Seller Dashboard dashboard-seller-insights.html noindex 1,049 words
Edit Listing: 1214 Rothsay Cir dashboard-seller-listing-edit.htmlEvery figure derives from listing_data.py — cannot disagree with the public listing. noindex 943 words
List your home dashboard-seller-listing-wizard.htmllink_listing_wizard — all 108 property_listing fields across 9 resumable steps, rendered from link_fields.py. noindex 2,957 words
My Listings — Seller Dashboard dashboard-seller-listings.html noindex 1,068 words
Notifications & Alerts — Seller Dashboard dashboard-seller-notifications.html noindex 850 words
Offer from Sample Buyer B — 1214 Rothsay Cir dashboard-seller-offer.html noindex 1,162 words
Offers & Negotiations — Seller Dashboard dashboard-seller-offers.html noindex 1,125 words
My Profile — Seller Dashboard dashboard-seller-profile.html noindex 839 words
Scheduled Showings — Seller Dashboard dashboard-seller-showings.html noindex 1,378 words
My Seller Dashboard dashboard-seller.htmlOverview. Built from the client's own comps. noindex 1,016 words

Internal reference

2 pages

Internal reference pages
Page Robots Size
Developer index developer.htmlThis page. noindex
Component Styleguide (internal) styleguide.htmlAll 16 tab-13-SDC components. Four render from components.py, so demo == implementation. noindex 4,964 words

Other

2 pages

Other pages
Page Robots Size
Messages — Seller Dashboard dashboard-messages.html noindex 1,352 words
Transaction — 4417 Kensington Ave dashboard-transaction.html noindex 1,100 words

Artifacts & contracts

The files the Drupal build reads. Nothing here is hand-maintained twice — each is generated from, or is itself, a single source.

Generated artifacts and contract files
File What it is
components.jsonSDC handoff contract — props with JSON Schema types, slots, component-vs-page-section triage
sitemap.xmlGenerated from each page's own noindex + canonical
robots.txtGenerated alongside the sitemap
BRIEF.mdThe build contract and its decision record
SEO-PLAN.mdPer-page query map
css/tokens.css@theme static block — lifts verbatim into the Drupal theme's src/input.css
css/extras.cssOnly what utilities cannot express. Layered, so it cannot outrank a component.
components.pyCanonical markup for step-tabs, rating-stars, message-thread, alert-toast
listing_data.pySingle source for every property fact in the prototype
link_fields.pyGENERATED field catalogue — every field, value list and vocabulary in the build manual
make-field-map.pyReads link_build_manual_*.xlsx and regenerates link_fields.py
verify-fields.pyFails the build if a manual field reaches no page, or if a v6 invariant is broken

Rebuilding

Pages are generated. Edit a make-*.py, never the HTML it writes — the exceptions are index.html, compare.html, how-it-works.html and the two dashboard overviews, which are hand-authored. Run the generators, then sync-shared.py once.

for g in make-pages make-listings make-dashboards make-buyer-dashboards \
         make-provider-pages make-account-pages make-bid-page \
         make-styleguide make-admin-pages make-developer; do
  python3 $g.py
done
python3 sync-shared.py     # tokens + header/appheader/footer into every page
python3 make-sitemap.py    # sitemap.xml + robots.txt from each page's own robots meta
python3 make-manifest.py   # components.json
python3 ~/.claude/skills/website-prototype-builder/scripts/verify.py .