Back to projects

E-commerce Aceites Rafael Sequera

A client's shop in production, with automated content and a handbrake

Orders, instant alerts to the owner's phone, and a blog that writes itself under a hard cap: one article per run.

  • Next.js
  • React
  • TypeScript
  • Prisma
  • PostgreSQL
  • Stripe
  • Telegram Bot API
  • Docker Compose
  • Caddy
E-commerce Aceites Rafael Sequera — A client's shop in production, with automated content and a handbrake — enlarge image

The demo in 30 seconds

What it is

The online shop of an olive oil producer, live in production with real customers. Not a mock-up: catalogue, cart, checkout with payment, order tracking by order number, legal pages, and an admin panel the owner uses to handle orders without calling me.

The part that makes it genuinely useful to him happens outside the website. Every order and every enquiry reaches him on Telegram the moment it lands, plus a daily summary, because one more email in an inbox is one nobody opens. The blog and the recipe section feed themselves: a job reads industry news sources, filters out what does not fit, and rewrites what is left before publishing it.

The number is really a decision: that job publishes at most one article per run, and the cap lives in the code rather than in configuration. An unbounded content generator floods the site within a week, destroys its own credibility, and leaves the client with a blog that reads like somebody else’s. Restraint is the feature, not a limitation. Underneath, 16 data models carry products, orders, moderated reviews, articles and the sales pipeline.