2RE03-Design/memory-bank/activeContext.md

41 KiB

Active Context - 2RE03 Portfolio Site

Current focus, recent changes, next steps, and active decisions. Last updated: 2026-10-01.

Working Agreements (read first)

  • Do not edit files outside the project folder. Every write (create, edit, move, delete) stays under the workspace root. Reading files elsewhere is allowed. If a task looks like it needs a write outside that folder, STOP and ask the user first, naming the path and the reason.
  • Never git commit or git push without explicit approval. Do the work, verify it, then STOP and ask. Approval covers that one action only; every future commit and push needs its own yes.
  • Until approval, leave finished work in the working tree as uncommitted changes, and say plainly what is sitting there waiting.

Current Work Focus

Everything to date is live, and the sales funnel is now in planning. A working static site on a locally vendored Bootstrap 5.3.3, with custom CSS/JS and a live Web3Forms contact page, a Collins-inspired Case Studies feature (typographic index + 10 detail pages), the first copy pass out of memory-bank/todo.md (homepage closing CTA, a Workflow band on services.html, the work-page hook), the favicon and social card, and captions on all 26 work.html gallery figures - re-worded on 2026-09-22 to the scope the user confirmed, which also moved the Urban Moto earplug article and the YLEM Journal cover into the Words gallery. All of it shipped in 8a7c3ea and was verified live. The live work is therefore done; what is in progress is the sales-funnel redesign, now planned in memory-bank/sales-funnel-plan.md. The offer blocker is cleared: the user answered the offer sheet on 2026-10-01 (name, promise, inclusions, duration, price band, what the client supplies, revision rounds, ownership, the paid diagnostic, the floor, the after-the-form flow and one outcome line per case study) and memory-bank/offer-draft.md has been reconciled against those answers, so the funnel copy can now be drafted and then built. The last offer-sheet question was answered on 2026-10-01: deposits and milestones are both stated (item 9), so nothing about the commercial terms is left open. Still open around it: user sign-off on the live copy, confirmation of the caption names read off the artwork, and captions for the case-study grids. The published-proof question (offer-sheet item 5) was settled on 2026-10-01 as none yet: no client has agreed to a name, quote, logo or identifiable number, so the proof stage ships as named case studies plus the transformation outcome lines only, adding nothing new client-attributable. The services.html red pen came back on 2026-10-01 and is applied: the web-craft paragraph was cut from the offer block (the meta rewrite stayed), and contact.html's free-text subject field is now a required topic dropdown whose selection is the email subject line. index.html is the next page to build; contact.html's Block D is unblocked (the payment terms are settled) and there is no scheduling link: a written enquiry is enough, the form is the only path, and the site publishes no email address.

Recent Changes

  • 2026-10-01 - Five funnel answers closed the offer, dropped the scheduling link, and removed a promise the site could not keep. The user answered: (1) deposits and milestones are both stated (offer-sheet item 9, the last open offer question), so the commercial terms can be written and contact.html's Block D is unblocked; (2) the secondary path is not a booking link (a written enquiry is enough), so the scheduling link is dropped from offer-draft.md, sales-funnel-plan.md and todo.md, and the form's Book a Project Clarity Session option is the booking path instead (services.html's Book a Clarity Session button already pointed at contact.html, so nothing needed rewiring); (3) Umami will be self-hosted, which the user is setting up, so the snippet and the conversion event stay pending rather than dropped; (4) the topic dropdown's options and phrasing are approved as built; and (5) no email address is published - "just make it contact us directly and use the form" - which changed one production line, because js/main.js's submit-failure fallback offered to "email us directly" when the site has no address to offer. It now reads "Something went wrong and your message did not send. Please try again in a moment." That is the only string changed, and js/main.js parses clean under gjs (SpiderMonkey). Note for the harness: node is not installed on this machine, so the node --check wording in older entries no longer applies; see techContext.md -> Tool Usage Patterns for the gjs substitute. Still deferred by the user for a later session: proof permissions, case-study name confirmations, images (Urban Moto hero, grid captions, logo, IKEHU video, homepage proof-strip photos) and outcome numbers. Also new this session: a tested screenshot harness at .shots/shoot.sh plus .shots/trim.py, living in the untracked .shots/ scratch folder and documented in techContext.md. Uncommitted.

  • 2026-10-01 - The services.html red pen came back, both edits landed, and the contact form's subject field became a routing dropdown. Three answers and two production changes: (1) the web-craft paragraph was cut from the offer block rather than kept folded in, so the offer column now runs eyebrow -> h2 -> promise -> three fact pills -> Start a project / Not ready for a project?; (2) the meta and og:description rewrite stayed as drafted; and (3) contact.html's free-text Subject (optional) input became a required <select name="subject"> labelled "What do you want to talk about?", whose selected value becomes the Web3Forms email subject line. The seven options are Book a Project Clarity Session, Start a website project, Logo or brand identity, Print design, 3D modeling, Writing, copy, or editing and Something else, behind a disabled Choose one placeholder, with an invalid-feedback line matching the other required fields. This needed no JavaScript change: js/main.js already posts new FormData(form), and per the Web3Forms docs ("Email Subject line") the field must be name="subject" and may be user-filled rather than a hidden input, so a <select> qualifies. Two consequences to keep in view: the topic is consumed as the subject line, so if it should also appear in the message body a second (duplicated) field would be needed, and the field is now required, which is a small friction the user did not explicitly ask for and can be reverted by dropping required. Verified: tag balance clean across all 16 pages, every reference resolves, no em/en dashes or curly quotes in our files, and headless-Firefox screenshots of contact.html at 1280px and 390px plus services.html at 1280px. services.html, contact.html and css/style.css are uncommitted.

  • 2026-10-01 - services.html was rebuilt around the offer, the first funnel page to ship, and is waiting on the user's red pen. Funnel Blocks A and B landed: the "Web Design" section became The 2RE03 Website Launch (the promise, the six inclusions, three fact pills, what you supply, what you own, Start a project plus Not ready for a project?), and The Project Clarity Session sits below it as a dark card ($250, 60 to 90 minutes, Book a Clarity Session, credited in full within 30 days). The web-craft detail (hand-coding, WordPress, hosting, domain, maintenance) was folded into the offer's supporting paragraph rather than dropped, the capability grid stayed as "Also on the bench", the Process, Workflow and closing CTA bands were left alone, and the meta and og:description now name the offer and the price band. New CSS in css/style.css: .pill, .pill--ink, .offer-terms, .eyebrow-cream. Verified the same way as the caption passes: tag balance clean, no em dashes in our files, every reference resolves across the 16 pages, and full-page screenshots at 1280px and 390px. index.html, contact.html, the case-study outcome lines, thank-you.html, the scheduling link and the Umami snippet are all untouched; services.html and css/style.css are uncommitted.

  • 2026-10-01 - The last proof question was settled as none yet, which makes the proof stage buildable without inventing anything. Asked whether any client had agreed to be named, quoted, shown or given a logo, the user answered not yet. The permission rule therefore stands (ask first, publish nothing client-attributable without a yes), and no testimonial, client logo, metric or new identifiable detail goes on any page; the proof stage ships as the named case studies plus the transformation outcome lines only, and the client names the case studies already publish simply stay. A clearance can be added later if one arrives. This leaves deposits/milestones (offer-sheet item 9) as the only open question before the offer copy ships. No production file was touched; the edits stay in the memory bank.

  • 2026-10-01 - The offer sheet was answered and the offer draft reconciled, so the funnel is unblocked. The user answered all nine offer-sheet questions in memory-bank/sales-funnel-plan.md and the follow-up decisions in the same exchange: the secondary low-commitment path is a scheduling link alongside the form; the reply voice is team voice ("we"), not a named individual; the reply-time promise stays as the live copy has it; there are no industries or project types to turn down; all pages must stay consistent with one another; and Umami analytics is being set up by the user and will be added later. The settled offer is The 2RE03 Website Launch ("We build distinctive websites that make your business easier to understand, trust, and act on."), 4 to 6 weeks, from $3,500 with most projects $4,500 to $7,500, 2 revision rounds, aimed at a 30-minute Project Fit Call, in front of a $250 Project Clarity Session credited in full within 30 days. memory-bank/offer-draft.md was then reconciled: the slot table now reads answered for every slot, the revision count moved 3 -> 2, "Site Assessment" became the Project Clarity Session, the price band and floor filled in, and the ten [[TODO]] case-study prompts were replaced by the ten transformation outcome lines (honest, because no hard numbers exist). Two items stay open: individual client clearances for published proof (item 5) and whether deposits or milestones are stated (item 9). No production file was touched; the only edits are sales-funnel-plan.md and offer-draft.md, both uncommitted.

  • 2026-09-22 - Deploy verified from the outside, and everything to date is now public. The user committed the staged batch as 8a7c3ea ("reworked some verbiage and added captions"), pushed it to origin/main and uploaded the repo root by hand, so the icon set, the social card, the full og:*/twitter:* set, copy pass 1, the 26 captions and the re-voiced blurbs are live for the first time. Verified by probe rather than assumed: all 16 pages return 200 with exactly one og:image and two rel="icon" links each; img/favicon.svg (2.1 KB, image/svg+xml), img/favicon.ico (15 KB), img/apple-touch-icon.png (3 KB) and img/og-image.png (176 KB) all return 200 with the right MIME types; /work.html serves 26 figures and 26 captions, every re-voiced string, and none of the replaced ones; /services.html serves the Workflow band and the food-cart copy; and a crawl of all 61 unique local asset paths the pages reference (images, CSS, JS, fonts) found no 404s. Working tree clean, HEAD == origin/main. The only caveat is that social scrapers may serve a cached preview of the domain until their caches turn over.

  • 2026-09-22 - Section copy brought in line with the captions, and the last naming questions settled. Four work.html blurbs were re-voiced so nothing contradicts the caption above it: the Words intro ("Editorial, documentation, and sales copy: we write it, we edit it, and we lay it out."), the App Design blurb (some pieces were "coded end to end", the rest "built to look real long before they ship"), the Print blurb (leads with the ads the gallery shows, keeps flyers, postcards, business cards, letterhead and product design as capability) and the Logos intro (", and the occasional title slide", so the Dat Art slide reads as deliberate). The Dat Art caption became "Presentation for Motion Labs" with a matching alt; "a pretzel stand" became "a food cart" in work.html and services.html, matching the render (labelled "Gourmet Pasteles and Churros") and the Upscale Food Cart case study. The user confirmed YLEM stays in both galleries and that 2plus5times3.webp keeps its name with the caption (10 + 2) x 5 authoritative. Verified: all seven new strings render and all five old ones are gone, 26 figures over 26 distinct images with one caption each, tags balance and every reference resolves across all 16 pages, no em dashes, galleries re-measured in headless Chrome (Print and App Design overflow=0 with both arrows disabled, Words 292px with only "next" enabled) and screenshot-checked at 1280px and 390px. Staged, awaiting the user's commit.

  • 2026-09-22 - Captions re-worded to the scope the user confirmed, and two pieces moved to Words. The user read the captions back against the archive and corrected the scope on six of them: Back That Ass Up is not a plain identity but the mark for a political campaign art show (which is why it is in US-flag colours), Mehavior was UX and UI, (10 + 2) x 5 was designed and coded end to end, and the three ads - Loren Kincaid, Macchiarini Metalworks, K.C. Engineering - are all plainly Print Ad (capital A, as specified in the brief). Sam's Rules of Money is "Book editing and illustrations", which the old "Book cover" hid (the user edited the book and its illustrations). Two pieces moved into the Words gallery, on the rule that a piece belongs to the category of its deliverable, not of the paper it landed on: writtenearplugs.webp ("Article, Urban Moto, February 2007") and printylemcover.webp ("Editing and cover design" - the user edited the whole magazine, cover included). Print now holds 3 items, all print ads; Words holds 4, ordered book, magazine, article, guide. Nothing else references those two files, so both galleries were the only edits. Verified: 26 figures over 26 distinct images, one caption each, exactly two references to the moved files (both in Words), tags balance and every reference resolves across the 16 pages, no em dashes, and the carousels were measured in a headless browser - Print is now scrollWidth == clientWidth with both arrows disabled (matching App Design, so 3 items leaves no dead control) while Words overflows by 292px with only "next" enabled - plus screenshot checks of the Print and Words bands at 1280px and 390px. Build intermediates in .tmp-captions/ were deleted. Uncommitted.

  • 2026-09-22 - Work galleries captioned, and the earplug piece moved. All 26 work.html figures are now <figure> elements carrying a .carousel__caption (piece name in semibold ink, format on a muted second line), styled by two new rules in css/style.css and always visible rather than hover-only, because hover does not exist on touch. The caption copy was written from the artwork itself after reviewing a labelled contact sheet of all 26 images, which caught a swap in the source set: writtenearplugs.webp is the Urban Moto earplug feature (page 39, February 2007) and writtenstructions.webp is the Napwell quick start guide. Per the backlog item, writtenearplugs.webp moved out of the Urban Moto case-study grid into the Print gallery, and that grid changed from row-cols-sm-2 to row-cols-sm-3 so its three remaining ads (K.C. Engineering, Loren Kincaid, Macchiarini) sit in one clean row with specific alts. No caption carries an author byline (see the attribution rule). Verified: tags balance and every reference resolves across the 16 pages, 26 figures over 26 distinct images with one caption each and no duplicates, screenshots of the Logos, Print and Words galleries at 1280px and 390px plus the Urban Moto grid, and a local 200 on every page. Build intermediates in .tmp-captions/ were deleted. Uncommitted.

  • 2026-09-22 - Open Graph / social image added, and the live domain recorded (second Assets item). img/og-image.png is a 1200x630 card built to match the site's hero rather than a generic graphic: the 120 degree green gradient, the faint ink dot grid at an 18px pitch, the DESIGN STUDIO eyebrow with tracking, the 2RE03 wordmark, the hero line "A design team for the web, and everything around it.", 2re03.com, and a 130px strip of six real work tiles (collage-1..6.webp) under a green wash (0.86 to 0.95) so it reads as texture and not noise. Rendered with PIL from the same instanced fonts the site uses (Space Grotesk 700, Inter 500/600), with the layout tuned against measured ink bands instead of by eye (element gaps 34 / 32 / 12 / 29 px, and 34 px of clear space above the strip). All 16 pages now carry rel="canonical", the full og:* set (including og:image:width/height/alt) and twitter:card=summary_large_image, with titles and descriptions reused from each page's own <title> and meta description so there is one source of truth per page. The live URL is https://2re03.com/, and the host serves .html URLs (/work 404s while /work.html 200s), so canonicals use the .html form with the bare root for the homepage. Verified: every page has exactly one of each tag, og:url equals that page's canonical, the declared image size matches the file (1200x630), tags balance, no em dashes, every reference resolves, and all pages plus the four new assets return HTTP 200. Note the live site still 404s on the new files because they are not deployed yet. Uncommitted.

  • 2026-09-22 - Favicon added (first item of the Assets batch, and the first thing built after the copy pass). img/favicon.svg is a #2ee666 rounded tile carrying the digit 2 as outline paths in brand ink, so it renders identically with no client font; img/favicon.ico holds 48/32/16 px rasters of the same mark; img/apple-touch-icon.png is a 180x180 square, opaque version for iOS (which applies its own corner mask). The outlines came from the site's own wordmark font: fonts/SpaceGrotesk-latin.woff2 instanced at wght=700 with fontTools.varLib.instancer, because that file is a variable font whose default instance is Light 300. Checks run: ink centred on the tile within half a pixel and the digit at ~56% of the tile, legible at 16 px, all 16 pages declare the three icons with relative paths (img/... at the root, ../img/... in case-studies/), tags still balance, every reference resolves, and the three assets serve HTTP 200. Recipe documented in techContext.md -> Icon & Social Assets. Build intermediates were kept in a temporary in-repo folder (.tmp-favicon/) and deleted. Uncommitted.

  • 2026-09-22 - Copy pass 1 from memory-bank/todo.md implemented (all four Now items), and this memory bank updated to match. Wording came from the brief, re-voiced from first person to the studio "we", with no em dashes introduced. Details: the homepage closing CTA in index.html is now "Have something that needs making?" followed by the three client questions (a list-unstyled list at .lead size) and "Tell us what you're trying to do. We'll figure out what needs to be made.", with a one-line .cta-questions li + li spacing helper in css/style.css; services.html gained a Workflow band between the Process section and the closing CTA (Old workflow / AI-assisted workflow / Finished result, the middle card dark via bg-ink text-cream) carrying the "we've figured out how to use AI to dramatically accelerate the design and development process without turning the result into generic AI slop" line; and work.html's closing band line became "Got a weird project? Give it to us." Verified: HTML tags balance on every touched page, no em dashes (character or entity), every relative href/src resolves, all pages/assets return HTTP 200 locally, and the two new sections were screenshot-checked at 1280px and 390px (the dark middle card and the mobile stacking both render correctly). Uncommitted; nothing was committed or pushed.

  • 2026-09-22 - Backlog moved into the memory bank: TODO.md at the repo root became memory-bank/todo.md (lowercase filename), so the backlog now sits with the other memory-bank files. References in activeContext.md, progress.md, and techContext.md were repointed. The site itself was untouched (no page ever linked to TODO.md).

  • 2026-09-22 - User set a code and writing style requirement: soft wrap. Do not hard-wrap lines to fit a column limit (there is no ~80-char limit) in code or in memory-bank writing; let the editor soft wrap long lines and break lines only at structural boundaries. Existing hard-wrapped files are left alone, with no reformat pass.

  • 2026-09-22 - User set a second working agreement: do not edit files outside the project folder (/home/torrey/Documents/Sites/2RE03). Recorded here (Working Agreements at the top, plus the decisions log), in projectbrief.md (Ways of Working), techContext.md (Tool Usage Patterns), and progress.md. No production files changed.

  • 2026-09-10 - Created the standard memory bank (memory-bank/): the six core files plus reference-materials.md (replacing an earlier single-file draft).

  • 2026-09-10 - Deleted the superseded draft .clinerules/memory-bank-oops.md; .clinerules/ now holds only the rule file.

  • 2026-09-10 - User locked the stack/styling/brand decisions (see below).

  • 2026-09-10 - Built the v0 scaffold: vendored Bootstrap 5.3.3 and the Inter/Space Grotesk fonts locally; created css/, js/, img/, fonts/; copied the 23 reference images into img/; wrote all five pages, css/style.css, js/main.js, and the Web3Forms contact form.

  • 2026-09-10 - Verified: all pages/assets return HTTP 200 locally, HTML tags balance, js/main.js passes node --check, no links into refrence/.

  • 2026-09-10 - Rethemed the site to a green palette centered on #2ee666 (tokens renamed in css/style.css; hero, header, footer, buttons, links, and accents updated; HTML class/meta updates).

  • 2026-09-10 - Added a Collins-inspired Case Studies feature: a typographic index (case-studies.html) with a cursor-following hover preview (js/case-studies.js), 8 detail pages in case-studies/, a homepage case-studies section, and "Case Studies" added to the nav/footer of every page.

  • 2026-09-10 - Added 6 real client websites as case studies (Cool Crap From China, Teach Each Other AI, Jensen's Red Barn, Mask Aid Project, 1 Woman's Art and Magic, Sam's Rules) with screenshots + live-site links; list now 13 entries.

  • 2026-09-10 - Corrected two case studies: "Kincaid" → Urban Moto (print design / art direction for a motorcycle magazine, 4-image gallery), and 1 Woman's Art and Magic → a two-book art series for painter Joanna Signer plus the website to help sell it.

  • 2026-09-10 - Trimmed case studies 13 → 11: removed Cool Crap From China and Data Vis Art; replaced Coop with Cart (a 3D design proposal). Work kept in the full portfolio (Cool Crap added to the Web gallery, Data Vis Art moved to the Logos gallery).

  • 2026-09-10 - Corrected Mehavior to an app project (logo, app interface and button design, and investor-pitch promotional material); category now "App Design & Identity".

  • 2026-09-10 - work.html: added a new App Design category (moved Mehavior in; added the "(10+2) x 5" productivity timer app).

  • 2026-09-10 - work.html: moved Web Design to the top of the section order (now Web Design, Logos, App Design, Print Design, 3D Modeling, Written Work).

  • 2026-09-10 - Renamed the "Written Work" category title to "Editorial" across the site (work page, homepage/services cards, and the Sam's Rules category label).

  • 2026-09-10 - Converted the homepage Selected work and all six Work galleries into Collins-style carousels (rounded, cropped images; scroll-snap track; arrows + keyboard + mouse drag via js/carousel.js).

  • 2026-09-10 - Expanded the Mask Aid Project case study's "What we did": video production, crowdfunding campaign, copywriting, and translation from Chinese.

  • 2026-09-10 - Web Design gallery: added Jensen's Red Barn + Mask Aid Project snapshots; re-shot the timer app image as a close-up.

  • 2026-09-10 - Homepage copy: replaced the avocado-hipster tagline with a professional, team-voiced hero line, and changed "Web design first. Everything design second." to "Web Design Is Only the Beginning" (+ supporting copy). Tone direction updated in productContext.md.

  • 2026-09-10 - Renamed the "Editorial" category to "Words" (covers sales copy + technical writing too): work-page heading/caption, homepage and services cards, and the Sam's Rules label ("Words & Web").

  • 2026-09-10 - Homepage: moved Selected work above What we do (background alternation preserved).

  • 2026-09-10 - Case studies pruned to 10 and reordered: removed Argent; renamed Victoria → Victoria Fuller, Cart → Upscale Food Cart (with page files renamed). Order now: Mask Aid Project → 1 Woman's Art and Magic → Sam's Rules → Mehavior → Jensen's Red Barn → Upscale Food Cart → Silver Lining → Victoria Fuller → Urban Moto → Teach Each Other AI.

  • 2026-09-10 - Enriched 5 case studies with client detail: Sam's Rules (illustrations + downloadable companion content), Jensen's Red Barn (Grandma Dorothy's scrapbook slideshow), Silver Lining (drove clients to a high-end retreat), Victoria Fuller (Playboy Bunny / logo rights), Urban Moto (guest articles, managing submissions, custom client ads).

  • 2026-09-10 - Jensen's Red Barn: added "Social media setup" (removed "Contact section"). Sam's Rules category → "Book Design & Web".

  • 2026-09-10 - work.html: moved web50shadesof2048.png into App Design (out of Web Design).

  • 2026-09-10 - App Design: swapped site-timer-app.jpg for 2plus5times3.jpg (cropped to 4:3).

  • 2026-09-10 - Added web backend services (hosting, site management, domain/URL sourcing) to services.html and the homepage Web Design card.

  • 2026-09-10 - Removed all em dashes from the site (and the memory bank); the tone guide now bans them.

  • 2026-09-10 - Contact form: Subject field is now optional.

  • 2026-09-10 - Replaced the hero portrait with a green gradient + dot grid site-wide, and a work collage on the homepage.

  • 2026-09-10 - Case study heroes now use each project's own image as the background (.hero--image + --hero-image).

  • 2026-09-10 - Hero tweaks: Mehavior shows the top (logo), Victoria Fuller sits at center 10% (cursive name), Jensen's Red Barn uses red-barn-photo.jpg, Urban Moto uses the middle of printtiresad.png. Added --hero-position.

  • 2026-09-10 - Case study images no longer letterbox (natural aspect via .card-work); added .card-work--frame for Urban Moto's grid.

  • 2026-09-10 - Removed refrence/ (temporary source, 19.4 MB) and four superseded images; stashed to /home/torrey/2RE03-unused-assets-backup/.

  • 2026-09-10 - Version control set up: git init on main, first commit of 79 files, remote origin = Forgejo 2RE03-Design.

  • 2026-09-10 - Added TODO.md as the backlog; the site was published by the user, and memory-bank//.clinerules/ were confirmed to stay tracked.

  • 2026-09-10 - Optimised all images to WebP (img/ 20 MB -> 3.2 MB, 85% smaller); printtiresad.png stays PNG. See techContext.md, Image Pipeline.

Next Steps

The full backlog lives in memory-bank/todo.md. This section keeps only the current priorities; new items go into todo.md first.

  1. Get user sign-off on the copy that is now live: copy pass 1 (homepage CTA, services.html Workflow band, work.html hook) plus the captions and the re-voiced work.html blurbs; refine wherever it reads wrong.

  2. Case-study grid captions - the main remaining content item. 9 of the 10 detail pages hold a single figure.card-work beside the copy and Urban Moto holds a 3-up grid of ads, none of them captioned, and .card-work has no caption style yet.

  3. Confirm the caption names that were read off the artwork (Argent, Drinking About..., D.R.I.V.E., 50 Shades of 2048, '78 Williams, 3dabandoned, and the unnamed "Sales page").

  4. Assets: a real 2RE03 logo, if one exists (the icon set and social card are done and live as of 2026-09-22), and more or real gallery work items, which need artwork nobody has supplied yet.

  5. Sales-funnel redesign: the offer is answered and the draft is reconciled, so the next move is copy, then build (2026-10-01). The diagnosis (10 leaks in the current site), the Land -> Recognise -> Believe -> Offer -> Risk reversal -> Convert -> Measure structure, the page-by-page draft and Cline's recommendation are in memory-bank/sales-funnel-plan.md; the Offer stage is one primary offer with a published price band plus a fixed-price diagnostic as the entry step (decision 34), now fully specified as The 2RE03 Website Launch (4 to 6 weeks, from $3,500, most $4,500 to $7,500, 2 revision rounds) with the Project Clarity Session ($250, 60 to 90 minutes, credited in full within 30 days) in front of a 30-minute Project Fit Call (decisions 35 and 36). memory-bank/offer-draft.md holds the reconciled slot table and the draft copy for services.html, index.html and contact.html. Next: work through the staged build order (pages first, then thank-you.html, the scheduling link and the Umami snippet), with the one remaining open item (deposits/milestones) settled before copy ships (the proof-clearance question is settled as none yet). Step 1 is done: services.html (Blocks A and B) was built on 2026-10-01 and red-penned the same day, and contact.html's subject field became a required topic dropdown (so the Block D pass on that page is partly underway, though its risk-reversal copy still waits on the deposits/milestones answer and the scheduling link); index.html is next. The remaining Polish items are the low-resolution Urban Moto hero and a possible motion/video section (the IKEHU video is not on this machine).

  6. Two inputs are still needed from the user before the funnel copy is complete: the deposit percentage and the milestone split (so the payments line can carry a figure), and the deferred proof answers (client permissions, case-study name confirmations, images, outcome numbers), which the user is coming back to in a later session.

Active Decisions & Considerations

Decisions Log

# Decision Status
1 Standard multi-file memory bank ✅ Done
2 refrence/ was temporary source; removed before the first commit (backed up outside the repo) ✅ Done
3 Never attribute work to a named individual on the site ✅ Done
4 Tone = sharp, professional, team-voiced, with an edge (see productContext.md) ✅ Updated
5 Stack = static hand-coded HTML + Bootstrap 5.3.3 (vendored locally) ✅ Done
6 Styling = Bootstrap components + custom css/style.css ✅ Done
7 Brand = purely 2RE03; no 2RE Factory parent brand ✅ Done
8 Fonts = Inter + Space Grotesk, self-hosted in fonts/ ✅ Done
9 Folder layout = css/, js/, img/, fonts/ ✅ Done
10 Contact = dedicated contact.html → Web3Forms (public access key) ✅ Done
11 Pages = index, work, about, services, contact ✅ Done
12 Reference images copied refrence/img/ → img/ as production assets ✅ Done
13 Color scheme centered on #2ee666 (green on ink) ✅ Done
14 Add Collins-style Case Studies (index + 8 detail pages + hover previews) ✅ Done
15 Add 6 real client websites as case studies (screenshots + live links) ✅ Done
16 Homepage copy: retire the avocado-hipster tagline; new team-voiced, professional hero + "Web Design Is Only the Beginning" ✅ Done
17 Version control: git repo on main, pushed to the Forgejo remote origin (2RE03-Design) ✅ Done
18 Site is published ✅ Done
19 Keep memory-bank/ and .clinerules/ tracked in the repo ✅ Done
20 TODO.md is the backlog; the memory bank points at it (now memory-bank/todo.md, see #24) ✅ Done
21 No git commit or git push without explicit user approval ✅ Active rule
22 No editing files outside the project folder (/home/torrey/Documents/Sites/2RE03); reads elsewhere are fine, writes are not, so ask first if a task seems to need one ✅ Active rule
23 Soft wrap: no hard wrapping at a column limit, in code and in memory-bank writing; a break marks a structural boundary, not a width boundary. Going forward only, with no reformat pass over existing files ✅ Active convention
24 Backlog lives at memory-bank/todo.md (moved out of the repo root and lowercased on 2026-09-22) ✅ Done
25 Live site = https://2re03.com/ and the host serves .html URLs, so canonical and Open Graph tags use absolute .html URLs (bare root for the homepage) ✅ Done
26 Site assets are generated from the site's own fonts: the favicon from instanced Space Grotesk outlines, the social card rendered with PIL to match the hero. Recipes in techContext.md ✅ Done
27 Work-gallery captions are written from what is actually in the image (client and format where known), always visible rather than hover-only, and never carry an author byline ✅ Done
28 A piece is filed under the gallery of its deliverable, not the paper it was printed on, so the Urban Moto earplug article and the YLEM Journal cover live in Words rather than Print ✅ Done
29 One client's work may legitimately appear twice when it serves two galleries: the YLEM identity mark stays in Logos and the journal cover stays in Words (user-confirmed 2026-09-22) ✅ Done
30 webdatavisart.webp stays in Logos and is captioned as a presentation ("Presentation for Motion Labs") rather than a mark, and the Logos intro says so (", and the occasional title slide") ✅ Done
31 A section blurb may claim only what the gallery under it actually shows; wider capability lists live on the service cards, not above a gallery ✅ Done
32 2plus5times3.webp keeps its file name; the caption (10 + 2) x 5 is treated as authoritative, and neither is treated as a typo ✅ Done
33 The sales-funnel redesign starts from the offer, not the layout: the user opted to define what is sold before any funnel copy or structure is written, so the diagnosis, the stage structure and a 9-item offer sheet live in memory-bank/sales-funnel-plan.md, and nothing gets built until the offer facts are supplied ✅ Done (shape settled, see #34)
34 The Offer stage is one primary offer with a published price band, plus a fixed-price diagnostic as the entry step, with all other capability left as bench depth. Cline recommended this (reasoning in memory-bank/sales-funnel-plan.md); the user accepted it on 2026-09-22. Packages (two to four engagements) and consultative/no-price selling are deferred to later stages rather than rejected. The copy lives in memory-bank/offer-draft.md ✅ Done; offer facts supplied 2026-10-01
35 The offer is The 2RE03 Website Launch: "We build distinctive websites that make your business easier to understand, trust, and act on.", 4 to 6 weeks, from $3,500 with most projects $4,500 to $7,500, 2 revision rounds, and the client owning the finished work on final payment. The paid entry step is the Project Clarity Session ($250, 60 to 90 minutes, credited in full toward a project within 30 days), aimed at a 30-minute Project Fit Call. Full answers in the offer-sheet table in memory-bank/sales-funnel-plan.md and the slot table in memory-bank/offer-draft.md ✅ Done 2026-10-01
36 Funnel specifics settled 2026-10-01, amended the same day: the secondary path is a written enquiry, not a booking link (revised from "a scheduling link" when the user answered that a plain email was enough; the topic dropdown is the booking path and no email address is published anywhere on the site); team voice ("we") on contact.html, not a named individual; the reply-time promise kept as the live copy states it; no industries or project types turned down; every page kept consistent with the others; Umami analytics chosen, self-hosted (the user is setting it up and adding it later). Proof clearances settled 2026-10-01 as none yet (no client name, quote, logo, photograph or identifiable number beyond the names already published), so the proof stage ships as named case studies plus the outcome lines only. Nothing about the offer is left open (2026-10-01) ✅ Done
37 Both deposits and milestones are stated on the offer (offer-sheet item 9, answered 2026-10-01), which was the last open offer question. The copy says a project starts on a deposit, payments fall due as agreed milestones are met, and the balance is due on delivery; the deposit percentage and the milestone split are still to be supplied, so no figure goes on a page yet. Client ownership stays tied to "paid in full" ✅ Done, figures pending

Open Questions (remaining)

  1. Real logo: the favicon and the Open Graph image were both built on 2026-09-22, but does a real 2RE03 logo file exist anywhere? Nothing has turned up in the repo or the asset backup.
  2. Copy approval: review/refine the drafted company-voice copy (copy pass 1 landed 2026-09-22 and is still awaiting sign-off).
  3. Gallery content: more work items, plus captions for the case-study grids? The work.html galleries were captioned on 2026-09-22, but several of those names were read off the artwork and need confirming (Argent, Drinking About..., D.R.I.V.E., 50 Shades of 2048, '78 Williams, 3dabandoned, and the unnamed "Sales page"). The Dat Art filing is settled: the title slide stays in Logos, captioned as a presentation rather than a mark.
  4. Live URL: answered, https://2re03.com/ (recorded 2026-09-22; the host serves .html URLs).
  5. Deploy cadence: should the new icons and social card go live now, and is deploying a manual upload?
  6. Published proof: answered 2026-10-01, none yet (see decision 36). No client has agreed to a name, company, testimonial, photograph, logo or identifiable number, and the case studies already publish the client names, so the proof stage ships as named case studies plus the transformation outcome lines only. The permission rule stands (ask first): if a clearance arrives later, add it then.
  7. Commercial terms: answered 2026-10-01 (decision 37), both are stated. The copy says a deposit starts the project, payments fall due as agreed milestones are met, and the balance is due on delivery. Still to supply: the deposit percentage and the milestone split, so no figure goes on a page until they arrive.

Important Patterns & Preferences

  • Git is user-gated: never git commit or git push without explicit approval (see Working Agreements at the top of this file).
  • Backlog convention: memory-bank/todo.md is the human-facing list of open work (moved there from the repo root on 2026-09-22). When an item lands, check it off and move it into the ## Done section with the date it landed, then prune Done periodically. The rest of the memory bank keeps only the current priorities and points there, so the two never drift. Issues (Forgejo) are for items that need discussion.
  • Plan-first; small, verifiable changes; plain/static, dependency-light output (see projectbrief.md → Ways of Working).
  • Private asset provenance (never credit the CEO on the site).
  • Keep all site copy in the tone defined in productContext.md.
  • Soft wrap, no hard wrapping: do not insert line breaks to satisfy a column limit. Keep each logical unit (statement, tag, CSS rule, list item, paragraph) on one line; a break marks a structural boundary, never a width boundary. Applies to code (HTML/CSS/JS) and to memory-bank writing. Existing hard-wrapped files stay as they are. Details in techContext.md -> Code Style.

Learnings & Insights

  • The reference build used hand-coded HTML + Bootstrap 5 with a small custom carousel (series-carousel.js); the local css//js/ assets it references are NOT present in this repo.
  • The reference bio is first-person and individual-focused; the 2RE03 site must re-voice it as the company.

Housekeeping

  • The superseded single-file draft .clinerules/memory-bank-oops.md was deleted (2026-09-10). .clinerules/ now contains only memory-bank.md.
  • Note: .clinerules/memory-bank.md is the Memory Bank rule file (it describes the structure); the actual data files live in the top-level memory-bank/ folder.
  • refrence/ plus four superseded images (blue_eyes_Torrey.png, red-barn-photo.jpg, site-sams-rules.jpg, site-timer-app.jpg) were moved on 2026-09-10 to /home/torrey/2RE03-unused-assets-backup/ (22 MB, outside the repo). Run rm -rf /home/torrey/2RE03-unused-assets-backup once nothing is needed from it.