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>
1.9 KiB
1.9 KiB
SimpleShop Roadmap
Vision and future features. For current status, see PROGRESS.md.
Core MVP: Cart & Checkout ✅
Session-based cart, Stripe-hosted Checkout, order persistence, and webhook handling are all complete. See PROGRESS.md for details.
Orders & Fulfillment (next up)
- Submit paid orders to Printify for fulfillment
- Track fulfillment status updates via webhook
- Display order status to customers
Cost Verification at Checkout
Verify Printify costs haven't changed before completing checkout to prevent selling at a loss.
Medium Features
Page Builder
Database-driven pages with drag-and-drop sections:
- Hero, Featured Products, Testimonials, Newsletter
- Per-section configuration
- See: docs/plans/page-builder.md
Future Features
Multi-Admin Support
- Multiple admin users
- Role-based permissions
- Audit logging
Custom Domains
- Domain verification
- SSL certificate provisioning
- DNS configuration guidance
Theme Export/Import
- JSON export of all settings
- Import with validation
- Preset sharing between shops
Advanced Theme Features
- Custom CSS injection
- Custom JavaScript snippets
- Code-level overrides for developers
Multi-Provider Support
Support multiple POD providers beyond Printify:
- Prodigi (better for art prints)
- Gelato (global fulfillment)
- Provider-agnostic product model
- Price comparison across providers
Technical Debt
Test Coverage
Areas needing better coverage:
- Shop LiveView integration tests
- CSS cache invalidation flow
- Theme application across all pages
- Responsive behaviour
- Accessibility validation
Error Handling
- Better error states for missing products
- Graceful degradation when theme settings are invalid
- Network error handling in LiveView
Rename Project
The project is named simpleshop_theme but it's now a full storefront. Consider renaming to simple_shop.