96 lines
10 KiB
Markdown
96 lines
10 KiB
Markdown
# Frame 44 site update — realign pricing model, gate prices, add data catalogue
|
||
|
||
Three tasks in one pass, on the existing Eleventy (11ty v3) site. Keep the current architecture exactly: all pricing content in `src/_data/*.json`, Nunjucks templates, plain CSS, the i18n split, no hardcoded prices in templates, no new build tooling.
|
||
|
||
**Read `CLAUDE.md` and `README.md` first** — follow the data-driven pattern, filter/shortcode conventions, logo/passthrough rules, and i18n scaffolding described there.
|
||
|
||
---
|
||
|
||
## HARD RULE — no prices anywhere on the public site
|
||
|
||
**No dollar figures, no "starting at," no ranges, anywhere in the built site.** Pricing lives only in a PDF guide sent on request. Price fields still exist in the JSON data files (for internal use and future PDF generation) but **must never be rendered in a public template**. Add a build-time check: grep the rendered `_site/` output for `$` in page content and confirm none appears in pricing context. If a price would surface on a page, that's a bug.
|
||
|
||
The public site's job: explain *how* pricing works and *what* exists, then capture the lead via two CTAs — **"Request the pricing guide"** and **"Inquire"**. Every interested museum should identify itself before it sees a number.
|
||
|
||
---
|
||
|
||
## TASK A — Replace the outdated pricing model
|
||
|
||
The current `packages.json` (Exhibit One / Gallery / Flagship / Multi-Site, build+annual prices) is from an older model. Replace the data model with the current one. Update the JSON so the data is correct and internally consistent; the public templates render names and descriptions only (never prices — see hard rule).
|
||
|
||
1. **`packages.json` → Studio tiers, one-time.** Three objects:
|
||
- Studio 1 — `oneTimePrice` 2500, features: "1 published exhibit", "1 theme"
|
||
- Studio 3 — `oneTimePrice` 7000, `badge` "Most chosen", features: "3 published exhibits", "All themes"
|
||
- Studio 5 — `oneTimePrice` 10000, features: "5 published exhibits", "All themes + custom branding"
|
||
- Add a shared-features string rendered once beneath the three cards: "Every Studio includes the map builder, timeline, English/French translation, web + touchscreen output, and hosting."
|
||
|
||
2. **New `maintenance.json`** — M&S annual tiers: Studio 1 (or a ready-to-go exhibit) 2500, Studio 3 3500, Studio 5 4500. Plus a coverage string ("Covers hosting & uptime (or on-premise server care), software updates & new features, screen monitoring & content sync, staff support by email & phone, security patching & backups.") and the footnote "Screens and on-premise add-ons include their own yearly maintenance, shown under Deployment."
|
||
|
||
3. **New `deployment.json`** — Cloud (included), On-Premise Server (+30% one-time, then +30%/yr), Gallery Screen (2500 one-time, then +500/yr), Custom Web Address (250 one-time; subdomain free).
|
||
|
||
4. **`aitools.json` → "AI & community tools."** Four items with the fuller descriptions:
|
||
- Visitor Chatbot — "A conversational guide on your gallery screens and website, answering visitor questions using only your approved exhibit content — so answers always stay accurate and on-brand."
|
||
- Research Chatbot — "A staff-only research assistant that searches across your full licensed archive in plain English, surfacing sources fast for exhibit development and visitor inquiries."
|
||
- Document Transcription — "Turns scanned letters, logs and documents into searchable, quotable text — so your archive becomes something visitors and staff can actually find things in."
|
||
- Community Contributions — "Community photo & story uploads with built-in moderation — nothing publishes without approval. Includes AI pre-screening & audit log."
|
||
|
||
5. **New `readymade.json`** — ready-to-go exhibit packages ("a finished, researched guided exhibit with its animated map — Studio included, ready to publish in weeks; growing library"). Entries: Dieppe, 419 Bomber Squadron.
|
||
|
||
6. **`historicalCollections.json` → keep per-collection objects** (the catalogue uses them) but they carry names/descriptions/coverage, not public prices. Reframe any pricing-page reference as "we'll recommend the right fit — request the pricing guide," never a printed grid.
|
||
|
||
7. **`extras.json`** — keep worked-example *inputs* in JSON for future PDF use, but the worked examples **do not render on the public site**. Remove the hardware-range and installation-timeline references from public pricing templates (they no longer appear under the new model).
|
||
|
||
8. **Rework `/pricing/`, `/platform/`, and the home pricing teaser** to the new model with **zero prices**:
|
||
- Intro line: "Interactive map exhibits for museums and heritage sites — any story that unfolds across a place. You buy the software once, then pay a yearly plan to keep it running."
|
||
- **Three ways to start** cards: *License a ready-made exhibit* (Fastest) — "A finished exhibit — Dieppe, 419 Bomber Squadron — live in weeks." · *We build it for you* (Most popular) — "Our team researches, writes and builds a guided map-story that carries visitors through your history, chapter by chapter." · *Build it yourself* (Most control) — "Your staff create exhibits in Studio, our builder."
|
||
- **What a Studio is** (no prices): the builder, running on the Frame 44 Atlas platform; exhibits run on your website and on gallery touchscreens; every Studio includes the map builder, timeline, EN/FR translation, web + touchscreen output, and hosting.
|
||
- **Custom builds:** "We create guided map-stories for any history rooted in place — a regiment's war, a ship's voyages, a town's growth, an expedition's route. Full archival research, writing, map animation and Studio build, shaped to your collection." (No price.)
|
||
- **Deployment options** (Cloud / On-Premise / gallery screens / custom web address) described by name only.
|
||
- **AI & community tools** described by name + description only.
|
||
- **Historical data:** described, with a link to `/catalogue/`.
|
||
- **Trust strip:** "Bilingual by design (English/French) · Runs offline on secure networks · Your content stays yours · Grant-ready paperwork included · Built for museums of every kind."
|
||
- **Dominant CTA, top and bottom of `/pricing/`: "Request the pricing guide"** — a short form (name, institution, email, optional message) that emails info@frame44.com; the reply sends the current pricing guide PDF and books a call. Use the site's existing contact/mailto pattern if no form backend exists (a structured `mailto:` with subject "Pricing guide request" is acceptable until a form backend is added — flag as TODO).
|
||
- Retire old package names (Exhibit One / Gallery / Flagship / Multi-Site) everywhere they appear.
|
||
|
||
9. **Confirmed values:** set `contactEmail` to **info@frame44.com** and `contactEmailConfirmed: true` in `site.json`. Update the `mailto:` on the contact page accordingly.
|
||
|
||
---
|
||
|
||
## TASK B — New `/catalogue/` page
|
||
|
||
A browsable catalogue of licensable data and exhibits at `src/catalogue/index.njk`. **No prices** — every tile ends in an **"Inquire"** CTA (structured `mailto:` to info@frame44.com with a subject naming the item, or a link to the contact page). Data-driven from JSON like the rest of the site.
|
||
|
||
Make both `/catalogue/` and `/data/` resolve here (alias or redirect), because the pricing guide PDF links to `frame44.com/data`. Add `/catalogue/` to the main nav.
|
||
|
||
Three groups:
|
||
|
||
1. **Ready-to-go exhibits** (from `readymade.json`) — image tile each (Dieppe, 419 Bomber Squadron): thumbnail, title, one-line description, "guided map-story" framing, "Inquire" button, plus a "new exhibits added regularly" note.
|
||
|
||
2. **Data collections** (from `historicalCollections.json`) — tiles for: Project '44 WWII mapped data (with a coverage tag, e.g. "First Canadian Army · NW Europe & Italy · 1943–45"), War diaries (digitized, searchable primary sources), Story maps (guided narratives), Project Athena (Afghanistan photo archive), Project Friction (Gulf War). Each tile: thumbnail, description, a **coverage/scope tag**, "Inquire" CTA. The coverage tag answers a regimental museum's first question — "do you have my unit?" — at a glance.
|
||
|
||
3. **Maps & imagery** (new `cartography.json`) — the differentiator: Historical basemaps (GSGS series, army-group situation maps, period projections), 1944–46 aerial imagery, Historical site layers ("a site mapped through time"). Each tile: thumbnail, description, "Inquire."
|
||
|
||
Plus a closing **"Don't see your subject?"** tile → custom research build → contact CTA, so non-military museums (maritime, civic, settlement) see themselves in the catalogue.
|
||
|
||
**Images:** screenshots will be supplied at `src/assets/images/catalogue/{dieppe,419sqn,aerial,wardiary,basemap}.jpg`. For any tile whose image isn't present yet, use the existing SVG-placeholder approach and flag it as a TODO. Follow the README's logo/passthrough conventions.
|
||
|
||
---
|
||
|
||
## Guardrails
|
||
|
||
- **No prices in any rendered public page** (the hard rule above). Price fields live in JSON for internal/PDF use only.
|
||
- **Never describe Frame 44 as owning Project '44's research.** Correct framing: Frame 44 licenses data from Project '44 (CRMA). Footer/data lines read "Data licensed from Project '44 (CRMA)."
|
||
- **Two product names only: Atlas** (the platform) and **Studio** (the builder). Never "Enhanced Content Builder" or "ECB"; never coin new product names. The kiosk output is "gallery screens"; the web output is "web exhibits."
|
||
- **Don't invent** prices, coverage claims, collection names, testimonials, or team bios beyond what's in the data files. Anything unknown → `<!-- TODO -->` and list it at the end.
|
||
- Follow the existing i18n pattern (strings in `src/_data/i18n/en.json`), keep the `/fr/`-ready structure intact.
|
||
|
||
## Definition of done
|
||
|
||
- `npm run build` succeeds; `npm run serve` renders cleanly, responsive 360–1440px.
|
||
- **Zero dollar figures anywhere in `_site/` page content** (grep to verify).
|
||
- `/pricing/` sells the model and drives "Request the pricing guide"; `/catalogue/` (and `/data/`) browse-only with "Inquire" CTAs.
|
||
- Old package names (Exhibit One / Gallery / Flagship / Multi-Site) appear nowhere in the built site.
|
||
- `contactEmail` is info@frame44.com and confirmed.
|
||
- A README/CLAUDE.md note added documenting the new data files (`maintenance.json`, `deployment.json`, `readymade.json`, `cartography.json`) and the no-public-prices rule.
|
||
- Final message: list every `<!-- TODO -->` placeholder still needing input (screenshots, form backend, fonts, museum copy, team bios, OG image).
|