simpleshop_theme/ROADMAP.md
Jamey Greenwood 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

4.4 KiB

SimpleshopTheme Roadmap

This document tracks future improvements, features, and known gaps.

Quick Wins (Low Effort)

CSS Cache Warming on Startup

Status: Not implemented Effort: Small

Currently the CSS cache (ETS) is created on startup but not pre-warmed. The first request after server restart generates CSS on-demand.

Implementation: Add cache warming to lib/simpleshop_theme/application.ex:

# After supervisor starts
Task.start(fn ->
  settings = SimpleshopTheme.Settings.get_theme_settings()
  css = SimpleshopTheme.Theme.CSSGenerator.generate(settings)
  SimpleshopTheme.Theme.CSSCache.put(css)
end)

Status: Not implemented Effort: Small

No links exist to navigate between the theme editor (/admin/theme) and the public shop (/).

Implementation:

  • Add "View Shop" button in theme editor header
  • Add "Edit Theme" link in shop header (when authenticated)

Collection Slug Routes

Status: Partial Effort: Small

Currently we have /products but the original plan included /collections/:slug for filtered views by category.

Enhanced Contact Page

Status: Not implemented Effort: Small

The current contact page has subtle footer social icons that are easy to miss. Improvements:

  1. Newsletter signup card - Prominent card encouraging newsletter subscription as the best way to stay updated (already in footer, but deserves dedicated placement)

  2. Social media links card - Full-width card listing social platforms with icons and text labels:

    [Instagram icon] Instagram
    [Patreon icon]   Patreon
    [TikTok icon]    TikTok
    [Facebook icon]  Facebook
    [Pinterest icon] Pinterest
    

    This makes social links more discoverable than the current small footer icons.

Implementation:

  • Add newsletter_card/1 component to ShopComponents
  • Add social_links_card/1 component with configurable platforms
  • Update contact page template to include both cards
  • Consider making platforms configurable via theme settings

Medium Features

Page Builder (Database-Driven Pages)

Status: Planned (see docs/plans/page-builder.md) Effort: Large

Allow shop owners to build custom pages by combining pre-built sections:

  • Hero, Featured Products, Testimonials, Newsletter, etc.
  • Drag-and-drop section ordering
  • Per-section configuration
  • Database-backed page storage

Future Features (Large Scope)

Products Context

Real product management instead of preview data:

  • Product CRUD
  • Variant support (size, colour)
  • Inventory tracking
  • Image galleries

Orders & Cart Functionality

Currently cart is display-only with mock data:

  • Session-based cart persistence
  • Add to cart functionality
  • Checkout flow
  • Order creation and history

Multi-Admin Support

Currently single-user authentication:

  • Multiple admin users
  • Role-based permissions
  • Audit logging

Custom Domains

Allow shops to use their own domain:

  • Domain verification
  • SSL certificate provisioning
  • DNS configuration guidance

Theme Export/Import

Backup and restore theme settings:

  • 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

Technical Debt

Test Coverage

Phase 9 testing is basic. 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

Completed (For Reference)

Sample Content ("Wildprint Studio")

  • 16 POD products across 5 categories
  • Nature/botanical theme with testimonials
  • UK-focused (prices in £)
  • Printify API integration for mockup generation (mix generate_mockups)

Phase 1-8: Theme Editor

  • Theme settings schema and persistence
  • CSS three-layer architecture
  • 8 theme presets
  • All customisation controls
  • Logo/header image uploads
  • SVG recolouring
  • Preview system with 7 pages

Phase 9: Storefront Integration

  • Public shop routes (/, /products, /products/:id, /cart, /about, /contact)
  • Shared PageTemplates for shop and preview
  • CSS injection via shop layout
  • Themed error pages (404/500)
  • Dev routes for error page preview