- 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>
2.3 KiB
2.3 KiB
SimpleShop Roadmap
Vision and future features. For current status, see PROGRESS.md.
Core MVP: Cart & Checkout
Session-Based Cart
Store cart in Phoenix session (no separate table needed for MVP).
defmodule SimpleshopTheme.Cart do
def get(session), do: Map.get(session, "cart", %{})
def add_item(session, variant_id, quantity \\ 1)
def remove_item(session, variant_id)
def update_quantity(session, variant_id, quantity)
def clear(session)
def to_line_items(cart)
def total(cart)
def item_count(cart)
end
Stripe Checkout
Stripe Checkout (hosted payment page) integration.
Dependencies: {:stripity_stripe, "~> 3.0"}
Routes:
post "/webhooks/stripe", StripeWebhookController, :handle
live "/checkout/success", ShopLive.CheckoutSuccess
live "/checkout/cancel", ShopLive.CheckoutCancel
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.