Commit Graph

13 Commits

Author SHA1 Message Date
jamey
ff1bc483b9 feat: add Stripe checkout, order persistence, and webhook handling
Stripe-hosted Checkout integration with full order lifecycle:
- stripity_stripe ~> 3.2 with sandbox/prod config via env vars
- Order and OrderItem schemas with price snapshots at purchase time
- CheckoutController creates pending order then redirects to Stripe
- StripeWebhookController verifies signatures and confirms payment
- Success page with real-time PubSub updates from webhook
- Shop flash messages for checkout error feedback
- Cart cleared after successful payment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:30:17 +00:00
jamey
d97918d66a docs: consolidate project tracking into PROGRESS.md
- Create PROGRESS.md as single source of truth for status
- Slim ROADMAP.md to vision only (~100 lines, down from ~500)
- Expand CLAUDE.md with streams, auth routing, forms, workflow
- Convert AGENTS.md to stub pointing to CLAUDE.md
- Update plan files with status headers, remove progress trackers

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 14:06:07 +00:00
62faf86abe docs: update ROADMAP with completed quick wins
Moved PageSpeed optimizations from "in progress" to "completed":
- Image optimization pipeline
- Font preloading
- Lazy loading
- Cache headers
- CSS bundle split

Added new completed items:
- Image Optimization Pipeline
- Themed Form Components

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 19:18:09 +00:00
5faa6c4c09 perf: self-host fonts and add /admin route
Self-hosted fonts:
- Download all 10 typefaces (35 font files, 728KB) from Google Fonts
- Create @font-face declarations in assets/css/fonts.css
- Remove Google Fonts external dependency from layouts
- Privacy improvement (no Google tracking)
- Performance improvement (no DNS lookup to fonts.googleapis.com)
- GDPR compliant (no third-party requests)

Admin access:
- Add /admin route that redirects to /admin/theme (requires auth)
- Remove Admin link from footer (too visible for visitors)
- Shop owners can bookmark or type /admin directly

Layout improvements:
- Create shop_root.html.heex as minimal root for shop pages
- Shop pages no longer show admin nav bar

Other:
- Update .gitignore to exclude digested static files
- Add PageSpeed 100% task to ROADMAP.md
- Fix test to check /users/settings instead of shop homepage

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 22:54:07 +00:00
8ab7169c1a docs: update ROADMAP and README with recent features
- Add Mobile Bottom Navigation section to ROADMAP
- Update routes table in README (collections routes)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 22:12:55 +00:00
6b45846d6d feat: enhance contact page with newsletter and social cards
Add newsletter_card component with :card and :inline variants to share
between footer and contact page. Add social_links_card component with
full-width icon+text cards for better discoverability.

Improve contact_form with optional email link and response time display,
keeping important contact info above the fold. Reorganize contact page
layout with form on left, info cards on right.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 19:13:48 +00:00
1f5498d7d8 docs: update ROADMAP with completed items
Mark as completed:
- Navigation links between admin and shop
- Collection routes with filtering and sorting
- Header navigation accessibility improvements

Update Phase 9 routes to reflect current implementation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:45:02 +00:00
fae851159a docs: move CSS cache warming to completed (already implemented)
The CSSCache.init/1 already calls warm() on startup.
Remove from Quick Wins, add to Completed section.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 21:12:13 +00:00
73e749c573 docs: replace ROADMAP with detailed MVP implementation plan
New "Core MVP" section with 5 phases:
- Phase A: Products Context + Printify Sync
- Phase B: Session-Based Cart
- Phase C: Stripe Checkout integration
- Phase D: Orders + Printify Fulfillment
- Phase E: Cost Verification at Checkout

Includes concrete schemas, code examples, and file lists.
Adds Multi-Provider Support to future features.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 21:06:31 +00:00
8e9a10e9b7 docs: rename to SimpleShop in docs, plan full rename for later
- Update README title to "SimpleShop"
- Update ROADMAP title to "SimpleShop Roadmap"
- Add "Rename Project to SimpleShop" to Technical Debt section
  with list of files that would need updating

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 23:09:42 +00:00
f3451429da docs: add Enhanced Contact Page to roadmap
- Newsletter signup card for prominent subscription CTA
- Social media links card with icons and text labels
- Makes social links more discoverable than small footer icons

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 23:06:04 +00:00
2e61115959 docs: fix ROADMAP references and move sample content to completed
- Remove reference to deleted sample-content.md
- Move Sample Content to Completed section (it's implemented)
- Note Printify integration in completed features

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:56:21 +00:00
6b6c7cc148 docs: reorganize documentation and add ROADMAP
- Rewrite README.md with proper project overview, setup, and structure
- Create ROADMAP.md capturing future improvements and known gaps
- Move reference docs to docs/ directory:
  - docs/spec.md (theme system specification)
  - docs/plans/sample-content.md (POD content refresh plan)
  - docs/plans/page-builder.md (existing)
  - docs/research/typography.md
  - docs/research/ux-patterns.md
- Delete obsolete planning files:
  - PLAN.md (work complete)
  - PHASE_9_PLAN.md (work complete)
  - PHASE_9_PROGRESS.md (stale tracker)
  - RECENT_CHANGES.md (stale)
- Keep AGENTS.md (Phoenix codegen guidelines)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:39:37 +00:00