Tangible Memories
WordPress + WooCommerce memorial keepsake store with an AI grief-aware chatbot, self-hosted with Cloudflare tunnel and automated deployment.
The Problem
A friend needed an online store for handmade memorial keepsakes — items like memory bears, keepsake boxes, and personalised memorial jewellery. The store needed to be sensitive to its audience (bereaved families), affordable to run, and easy for a non-technical person to manage. Commercial hosting with WooCommerce plugins would cost £30–50/month minimum.
The Solution
A fully self-hosted WordPress + WooCommerce store running on Docker, accessible via Cloudflare Tunnel with a custom domain. The standout feature: an AI-powered chatbot that understands grief context and can answer questions about products with genuine sensitivity.
Architecture
- WordPress + WooCommerce: Docker containers (WordPress + MariaDB) on the Brain server
- Cloudflare Tunnel: Named tunnel routing heldclose.co.uk → localhost:8082
- AI Chatbot: Custom plugin using deepseek-r1:7b via local Ollama, with grief-aware system prompt and content-aware mode that reads product descriptions
- Email: Cloudflare Email Routing (info@ and enquiries@ → Outlook)
- Dynamic URL Detection: wp-config.php detects local vs. public URL automatically
Key Features
Grief-Aware AI Chatbot
The chatbot doesn’t just answer product questions — it understands the emotional context. Its system prompt is tuned for sensitivity: it acknowledges loss, avoids pushy sales language, and offers gentle suggestions. Content-aware mode means it actually reads the store’s product catalogue to give accurate answers.
Zero-Cost Hosting
By self-hosting on existing infrastructure (the DL380 Gen9 server that was already running 24/7), the total hosting cost is £0/month. The Cloudflare free plan provides SSL, CDN caching, and DDoS protection.
Non-Technical Management
The store owner logs in as a Shop Manager and can add/edit products, manage orders, and view analytics without touching any code. WordPress handles the CMS, WooCommerce handles the storefront.
Email Routing
Professional email addresses ([email protected], [email protected]) route to an Outlook inbox via Cloudflare Email Routing — no email server to manage.
Technical Decisions
- WordPress over custom build: Client needs to manage it independently — WordPress is the right tool
- MariaDB over MySQL: Drop-in replacement, better performance, community maintained
- Cloudflare Tunnel over port forwarding: No exposed ports, automatic SSL, DDoS protection
- deepseek-r1:7b for chatbot: Runs locally, no API costs, good enough for product Q&A
Results
- £0/month hosting cost (self-hosted on existing infrastructure)
- Custom domain with professional email routing
- AI chatbot providing grief-sensitive product assistance
- 11 active plugins for SEO, security, caching, and WooCommerce features
- Shop Manager role for independent client management
Tech Stack
WordPress, WooCommerce, Docker, MariaDB, Cloudflare Tunnel, Ollama, deepseek-r1:7b, PHP, nginx
Interested in something similar?
I build custom AI systems and infrastructure for businesses.
Get In Touch