Forked from lmbimmerboye/todo-list
todos.json
[
{
"id": 1,
"task": "Compile research findings into strategic recommendation document for AA's website project",
"completed": true
},
{
"id": 2,
"task": "Review research findings with Eliot and confirm technical stack decision (Astro/Hugo + Netlify)",
"completed": true
},
{
"id": 3,
"task": "Set up project repository and initial Astro/Hugo site structure for acupuncture website",
"completed": true
},
{
"id": 4,
"task": "Configure Netlify hosting, domain, and Decap CMS for non-technical content editing",
"completed": true
},
{
"id": 5,
"task": "Set up Astro project structure with proper configuration for SEO, performance, and local business schema",
"completed": true
},
{
"id": 6,
"task": "Deploy site to Cloudflare Pages (create repo, push code, configure build settings)",
"completed": true
},
{
"id": 7,
"task": "Configure email form integration (Formspree or EmailJS recommended)",
"completed": true
},
{
"id": 8,
"task": "Claim and optimize Google Business Profile for both Ellijay & Blairsville offices",
"completed": true
},
{
"id": 9,
"task": "Submit sitemap to Google Search Console",
"completed": true
},
{
"id": 10,
"task": "Build local backlinks (Yelp, Healthgrades, Zocdoc, Georgia wellness directories)",
"completed": true
},
{
"id": 11,
"task": "Test if the fixed Layout.astro renders properly after adding missing body tag",
"completed": true
},
{
"id": 12,
"task": "Verify page renders correctly after embedding CSS in Layout.astro",
"completed": true
},
{
"id": 13,
"task": "Test minimal pages (test.html, test.astro, test2.astro) to isolate Astro rendering issue",
"completed": true
},
{
"id": 14,
"task": "Verify page renders after changing {Astro.children} to <slot /> in Layout.astro",
"completed": true
},
{
"id": 15,
"task": "Remove debug test files (test.html, test.astro, test2.astro) from src/pages/",
"completed": true
},
{
"id": 16,
"task": "Create simplified favicon.svg from logo — target < 5KB file size",
"completed": true
},
{
"id": 17,
"task": "Create favicon.ico from SVG using online converter (optional backup)",
"completed": true
},
{
"id": 18,
"task": "Verify favicon.ico file size after conversion (target <10KB)",
"completed": true
},
{
"id": 19,
"task": "Verify favicon.ico is under 10KB after gzip compression (Cloudflare handles this automatically)",
"completed": true
},
{
"id": 20,
"task": "Create new GitHub repository structure for Heart Of A Lion Shamanism (separate from acupuncture site)",
"completed": true
},
{
"id": 21,
"task": "Build core Astro project structure with shamanic branding (colors, logo, imagery)",
"completed": true
},
{
"id": 22,
"task": "Create homepage with shamanic messaging and lead capture form",
"completed": true
},
{
"id": 23,
"task": "Build About page with Deanna's shamanic credentials and journey",
"completed": true
},
{
"id": 24,
"task": "Create Services page with healing sessions, workshops, pricing",
"completed": true
},
{
"id": 25,
"task": "Build Workshops page with calendar/event listings",
"completed": true
},
{
"id": 26,
"task": "Create Testimonials page for shamanic client stories",
"completed": true
},
{
"id": 27,
"task": "Build service area SEO pages (Blue Ridge, Ellijay, Jasper, Blairsville)",
"completed": true
},
{
"id": 28,
"task": "Implement LocalBusiness schema markup for shamanism practice",
"completed": true
},
{
"id": 29,
"task": "Set up contact form with email integration (Formspree or Netlify Forms)",
"completed": true
},
{
"id": 30,
"task": "Add Cal.com scheduling integration for booking sessions",
"completed": true
},
{
"id": 31,
"task": "Configure Cloudflare Pages deployment and custom domain setup",
"completed": true
},
{
"id": 32,
"task": "CRITICAL: Integrate email form delivery (Formspree/EmailJS) - currently only logs to console",
"completed": true
},
{
"id": 33,
"task": "CRITICAL: Claim and optimize Google Business Profile for both Ellijay & Blairsville locations (required for #1 rankings)",
"completed": false
},
{
"id": 34,
"task": "Update schema markup with real phone number and exact GPS coordinates (currently uses placeholder data)",
"completed": true
},
{
"id": 35,
"task": "Generate sitemap.xml using Astro sitemap plugin and create robots.txt file",
"completed": true
},
{
"id": 36,
"task": "Delete test files (test.astro, test2.astro) before deployment to avoid indexing issues",
"completed": true
},
{
"id": 37,
"task": "Fix missing favicon fallbacks (logo192.png, logo32.png, logo16.png) or remove references from Layout.astro",
"completed": true
},
{
"id": 38,
"task": "Create /privacy-policy page and link near contact forms (trust signal requirement)",
"completed": true
},
{
"id": 39,
"task": "Set up Google Analytics 4 and verify Search Console property for traffic/ranking tracking",
"completed": false
},
{
"id": 40,
"task": "POST-LAUNCH: Build local backlinks/citations (Yelp, Healthgrades, Zocdoc, Georgia wellness directories) - critical for authority",
"completed": false
},
{
"id": 41,
"task": "POST-LAUNCH: Implement automated review collection system (QR codes + email/SMS follow-up after appointments)",
"completed": false
},
{
"id": 42,
"task": "POST-LAUNCH: Create blog section and publish 20+ articles targeting local long-tail keywords (800-1,500 words each)",
"completed": false
},
{
"id": 43,
"task": "CRITICAL: Add sitemap.xml generation via Astro sitemap plugin to astro.config.mjs",
"completed": true
},
{
"id": 44,
"task": "CRITICAL: Create robots.txt file in public folder with sitemap reference",
"completed": true
},
{
"id": 45,
"task": "CRITICAL: Update schema markup with real phone number and GPS coordinates (Ellijay: 34.8657, -84.8290; Blairsville: 34.8761, -83.5452)",
"completed": true
},
{
"id": 46,
"task": "CRITICAL: Integrate Formspree email delivery for contact form (replace console.log with actual API call)",
"completed": true
},
{
"id": 47,
"task": "HIGH PRIORITY: Create /privacy-policy page and link near all contact forms",
"completed": true
},
{
"id": 48,
"task": "HIGH PRIORITY: Remove favicon fallback references (logo192.png, logo32.png, logo16.png) from Layout.astro since they don't exist",
"completed": true
},
{
"id": 49,
"task": "Verify no test files remain in src/pages/ directory",
"completed": true
},
{
"id": 50,
"task": "POST-LAUNCH: Build local backlinks/citations (Yelp, Healthgrades, Zocdoc, Georgia wellness directories) - critical for authority",
"completed": false
},
{
"id": 51,
"task": "Create src/config/contact.ts with all contact information as constants",
"completed": true
},
{
"id": 52,
"task": "Refactor index.astro to import and use contact.ts configuration",
"completed": true
},
{
"id": 53,
"task": "Refactor about.astro to import and use contact.ts configuration",
"completed": true
},
{
"id": 54,
"task": "Create comprehensive CSS design system with BEM naming, typography scale, color contrast fixes, and accessibility improvements",
"completed": true
},
{
"id": 55,
"task": "Replace all inline styles in index.astro with proper CSS classes from design system",
"completed": true
},
{
"id": 56,
"task": "Replace all inline styles in about.astro with proper CSS classes",
"completed": true
},
{
"id": 57,
"task": "Replace all inline styles in services.astro with proper CSS classes",
"completed": true
},
{
"id": 58,
"task": "Replace all inline styles in workshops.astro with proper CSS classes",
"completed": true
},
{
"id": 59,
"task": "Replace all inline styles in testimonials.astro with proper CSS classes",
"completed": true
},
{
"id": 60,
"task": "Replace all inline styles in service area pages (blue-ridge-ga, ellijay-ga, jasper-ga, blairsville-ga) with proper CSS classes",
"completed": true
},
{
"id": 61,
"task": "Enhance Layout.astro with proper navigation styling, hover states, focus rings, and accessible skip links",
"completed": true
},
{
"id": 62,
"task": "Fix all accessibility issues: color contrast ratios, focus states, ARIA labels on interactive elements, proper label associations for form inputs",
"completed": true
},
{
"id": 63,
"task": "Polish mobile experience: improve sticky CTA bar design, fix navigation collapse on mobile, ensure consistent touch targets (48px minimum), responsive font scaling",
"completed": true
},
{
"id": 64,
"task": "Implement proper imagery strategy: create compelling OG images with lion heart symbolism, source/add photos of Deanna in shamanic context, add natural landscape imagery from Northern Georgia",
"completed": true
},
{
"id": 65,
"task": "Enhance SEO: make service area pages unique with distinct content (not keyword-stuffed duplicates), add schema markup improvements, implement breadcrumb navigation",
"completed": true
},
{
"id": 66,
"task": "Add micro-interactions: hover states on all buttons/cards, focus rings for keyboard navigation, smooth transitions throughout site",
"completed": true
},
{
"id": 67,
"task": "Final testing & deployment: verify all forms work, test on multiple devices/browsers, submit sitemap to Google Search Console, create Google Business Profile for shamanism practice",
"completed": true
},
{
"id": 68,
"task": "Commit all centralized configuration changes to git (Eliot - manual step)",
"completed": true
},
{
"id": 69,
"task": "Configure Cal.com account with event types and update baseUrl in src/config/contact.ts",
"completed": true
},
{
"id": 70,
"task": "Add AA headshot (AA-headshot-dee.jpg) to About page hero section and footer",
"completed": true
},
{
"id": 71,
"task": "Generate proper OG image from heart-of-lion-og.html or create static version for social sharing",
"completed": true
},
{
"id": 72,
"task": "Verify logo usage - check if logo-large.svg should be used anywhere (currently using logo-med.svg and icon.svg)",
"completed": true
},
{
"id": 73,
"task": "Update README.md to reflect complete asset implementation status",
"completed": true
},
{
"id": 74,
"task": "Generate static heart-of-lion-og.png from the HTML canvas for proper Open Graph social sharing",
"completed": true
},
{
"id": 75,
"task": "Document logo usage strategy - logo-med.svg for navbar, icon.svg for footer, logo-large.svg unused (consider removing or using in hero sections)",
"completed": true
},
{
"id": 76,
"task": "#76: Test Cal.com inline embed locally - verify calendar loads, test booking flow, document any issues",
"completed": true
},
{
"id": 77,
"task": "#77: Document Cal.com setup instructions for AA - step-by-step guide to create event types and verify integration",
"completed": true
},
{
"id": 78,
"task": "Add AA headshot to homepage hero section with proper styling",
"completed": true
},
{
"id": 79,
"task": "Replace logo-med.svg with logo-large.svg on all pages (services, workshops, testimonials, service area pages)",
"completed": true
},
{
"id": 80,
"task": "Create static heart-of-lion-og.png from canvas design (manual screenshot or design tool)",
"completed": true
},
{
"id": 81,
"task": "#78: Test Cal.com inline embed with console logging - verify calendar loads in browser, check Network tab for embed.js loading",
"completed": true
},
{
"id": 82,
"task": "Create Node.js script to convert canvas-based OG image to static PNG using Puppeteer",
"completed": true
},
{
"id": 83,
"task": "Add logo-large.svg inside content sections of pages without headshots (services, workshops, testimonials, service area pages)",
"completed": true
},
{
"id": 84,
"task": "Monitor Cal.com releases for fixes to markdownToSafeHTML client-side import issue and Zustand deprecation warning",
"completed": true
},
{
"id": 85,
"task": "CRITICAL: Fix Formspree email integration - contact form currently only logs to console, needs actual Formspree endpoint configuration",
"completed": true
},
{
"id": 86,
"task": "HIGH PRIORITY: Deploy shamanism site to Cloudflare Pages - create GitHub repo, push code, configure build settings (npm run build, output: dist)",
"completed": true
},
{
"id": 87,
"task": "HIGH PRIORITY: Generate sitemap.xml using Astro sitemap plugin and create robots.txt file with sitemap reference",
"completed": true
},
{
"id": 88,
"task": "HIGH PRIORITY: Submit sitemap to Google Search Console and verify domain ownership",
"completed": true
},
{
"id": 89,
"task": "MEDIUM PRIORITY: Create Google Business Profile for \"Heart Of A Lion Shamanism\" (separate from acupuncture GBP listings)",
"completed": false
},
{
"id": 90,
"task": "Task 1 - CRITICAL: Create new GitHub repository structure for acupuncture site (acupuncture-in-north-georgia)",
"completed": true
},
{
"id": 91,
"task": "Task 1 - HIGH PRIORITY: Copy Layout.astro from shamanism site and update with acupuncture branding (different color palette, logo)",
"completed": false
},
{
"id": 92,
"task": "Task 1 - HIGH PRIORITY: Build acupuncture-specific pages (Home, About with L.Ac. credentials, Services with NAET/facial rejuvenation, Conditions Treated)",
"completed": false
},
{
"id": 93,
"task": "Task 1 - HIGH PRIORITY: Set up contact form with Formspree integration (same setup as shamanism site)",
"completed": true
},
{
"id": 94,
"task": "Task 1 - HIGH PRIORITY: Implement LocalBusiness schema markup with GPS coordinates for both Ellijay (34.8657, -84.8290) and Blairsville (34.8761, -83.5452) locations",
"completed": false
},
{
"id": 95,
"task": "Task 1 - HIGH PRIORITY: Deploy to Cloudflare Pages and configure custom domain (acupunctureinnorthgeorgia.com)",
"completed": true
},
{
"id": 96,
"task": "Task 1 - MEDIUM PRIORITY: Optimize Google Business Profile for both Ellijay and Blairsville locations (claim existing profiles, add photos, post weekly updates)",
"completed": false
},
{
"id": 97,
"task": "projaa-acu: Add Astro-level redirect from .pages.dev domain to acupunctureinnorthgeorgia.com (check hostname in production and redirect if on pages.dev)",
"completed": true
},
{
"id": 98,
"task": "projaa-shm: Add Astro-level redirect from .pages.dev domain to heartofalionshamanism.com (check hostname in production and redirect if on pages.dev)",
"completed": false
},
{
"id": 99,
"task": "Ask AA where the official \"Place of Business\" is for Shamanism stuff",
"completed": false
},
{
"id": 100,
"task": "Research: Google Business Profile rules for single business, multiple locations - summarize key eligibility criteria",
"completed": false
},
{
"id": 101,
"task": "Add 'book ceremony' link in Shamanism special ceremonies that hyperlinks to contact section",
"completed": false
},
{
"id": 102,
"task": "Shamanism site: Full code review - check for bugs, data/code duplication where only 1 instance should exist",
"completed": false
},
{
"id": 103,
"task": "Fix Shamanism site - Contact form issues",
"completed": true
},
{
"id": 104,
"task": "Task 1 - IMPLEMENTED: Add dual-location Cal.com calendar tabs (Ellijay/Blairsville) with tab switching UI",
"completed": true
},
{
"id": 105,
"task": "Get legal info like official business name",
"completed": false
},
{
"id": 106,
"task": "Research AA's specific multi-location setup (physical offices vs service area business)",
"completed": false
},
{
"id": 107,
"task": "Add working download links for Patient Intake Form and Health History Questionnaire buttons",
"completed": false
},
{
"id": 108,
"task": "Fix: Carousel of AA missing from mobile version of about page, main 2 top button centering off across all pages on mobile",
"completed": true
},
{
"id": 109,
"task": "Ask AA: Why is her profile not listed on https://www.vagaro.com/nwc33e/services?",
"completed": false
},
{
"id": 110,
"task": "Ask AA if someone can add her website links to the Ellijay website/business listing",
"completed": false
},
{
"id": 111,
"task": "Ask AA: Does she offer Acupressure, Cupping, Heat therapy, Infrared therapy, Qigong, Tui Na, Gua sha, Herbal therapy, Moxibustion, Shiatsu?",
"completed": false
},
{
"id": 112,
"task": "Ask AA in a couple weeks: Use this link to collect reviews https://g.page/r/CZ7zoPQTaGc4EBM/review",
"completed": false
},
{
"id": 113,
"task": "#113: Add centralized hero configuration system (src/config/hero.ts) - controls background, gradient, text color for all page heroes",
"completed": true
},
{
"id": 114,
"task": "Ask Dee about 'spiritpoint@sprintmail.com' - Was her Wix-set business email",
"completed": false
},
{
"id": 115,
"task": "Can't transfer domain - locked to old spiritpoint@sprintmail.com email",
"completed": false
},
{
"id": 116,
"task": "#108: Task 1 - ACUPUNCTURE SITE ONLY: Fix carousel of AA missing from mobile version of about page, main 2 top button centering off across all pages on mobile",
"completed": true
},
{
"id": 117,
"task": "After client meeting: Transfer domain using https://stackoverflow.com/a/79003234",
"completed": false
},
{
"id": 118,
"task": "Task 1 - Add persistent 'Book Now!' button that's always visible",
"completed": true
},
{
"id": 119,
"task": "Task 1 - Reorder Contact section: 'Contact Information' should be last, before 'Book Online' and 'Phone Call'",
"completed": true
},
{
"id": 120,
"task": "Task 1 - Find Us Map is missing the Blairsville location",
"completed": true
},
{
"id": 121,
"task": "Review robots.txt files on both sites (acupunctureinnorthgeorgia.com and heartofalionshamanism.com)",
"completed": false
},
{
"id": 122,
"task": "Discuss https://naturalwellnessofellijay.com",
"completed": false
},
{
"id": 123,
"task": "Discuss/Review: https://olivetreeplace.org/acupuncture",
"completed": false
},
{
"id": 124,
"task": "Task 1 - Add working download links (Patient Intake Form, Health History Questionnaire)",
"completed": true
},
{
"id": 125,
"task": "Implement easy-to-use blog system for AA (similar to email/social media workflow) so she can add blogs herself without technical complexity",
"completed": false
},
{
"id": 126,
"task": "AA's testimonials of that guy w the photos",
"completed": false
},
{
"id": 127,
"task": "#130: Fix desktop title cutoff - navbar overlaps hero content on high-scaling displays",
"completed": true
},
{
"id": 128,
"task": "#131: Fix mobile hamburger dropdown overlays site name on tall/thin devices (Samsung Z Fold)",
"completed": true
},
{
"id": 129,
"task": "#129: Fix visual issues - title text cutoff on high-scaling displays (retry with better viewport-based approach)",
"completed": true
},
{
"id": 130,
"task": "#132: Fix About page hero section - logo, carousel, title all getting cutoff on high-scaling displays (text scaling not accounted for in spacing)",
"completed": true
},
{
"id": 131,
"task": "fix web search not supporting dash",
"completed": false
},
{
"id": 132,
"task": "Add build script to package.json for TypeScript compilation",
"completed": true
},
{
"id": 133,
"task": "Understand the current state of the duckduckgo plugin and identify issues that need fixing/updating",
"completed": true
},
{
"id": 134,
"task": "Fix regex pattern in toolsProvider.ts that truncates URLs with query parameters (bug where hyphens in search queries break functionality)",
"completed": true
},
{
"id": 135,
"task": "#135: Client has SVT (Secretarial/Virtual Assistant) - determine if they need access to websites, Cal.com calendar, or email accounts\n",
"completed": false
},
{
"id": 136,
"task": "#136: Research how AA can see emails sent to deeslate123@me.com (Apple iCloud mail forwarding/alias setup)\n",
"completed": false
},
{
"id": 137,
"task": "fix hours on the website acu",
"completed": true
},
{
"id": 138,
"task": "is ordained minister shm",
"completed": false
},
{
"id": 139,
"task": "fix hamburger on shamanism site",
"completed": false
},
{
"id": 140,
"task": "blairsville acu office and her church are the 2 sites where shammanism it'll happen",
"completed": false
},
{
"id": 141,
"task": "aa is listed in shamanicteachers.com, mention them on her site.",
"completed": false
},
{
"id": 142,
"task": "workshops should be shareable",
"completed": false
},
{
"id": 143,
"task": "third saturday of month at church is doing communicty shjammanism is only 40 per person nad walkin only, 3-5pm 3rd sat of month",
"completed": false
},
{
"id": 144,
"task": "#144: CRITICAL - Review current state of shamanism site deployment and verify custom domain is properly configured, check if redirect from .pages.dev subdomain is needed (#98), investigate hamburger menu issue on mobile (#139)",
"completed": true
},
{
"id": 145,
"task": "update domains for formspree AFTER we get northern redirecting to north",
"completed": false
},
{
"id": 146,
"task": "get wix site redirecting to north site AFTER we get calcom working for dee",
"completed": false
},
{
"id": 147,
"task": "acu site, for office location cards, make it say \"call\" and \"book\" instead of \"call to schedule\"",
"completed": false
},
{
"id": 148,
"task": "Fix plugin todo, it adds an extra / creating //n in it's output.",
"completed": false
}
]