Skip to content

My own products

Two complete products, built from scratch.

01 · CitavekIn production

Appointment
management SaaS

A multi-tenant booking platform for barbershops in Colombia. Today it manages businesses, services, barbers, customers, availability and scheduling from one dashboard. I defined the product, the architecture and built it end to end.

  • Next.js 16 · App Router
  • Clean / Hexagonal
  • Multi-tenant
  • Node.js
  • PostgreSQL
  • Auth
  • REST APIs

What I built

  • Public booking in 4 steps

    Service → barber → date → confirmation, with prices and durations adding up.

  • A public page per business

    Every barbershop gets its own link — citavek.com/their-shop — fully customisable from their panel: colours, logo, cover photo, services and prices.

  • Management panel

    Businesses, services, barbers, customers, availability and scheduling, with role-based authenticated access.

  • Control tower

    Platform telemetry: active businesses, appointments, feature adoption, account health and onboarding.

Citavek landing page: the Spanish “¿Te suena familiar?” (Sound familiar?) section on WhatsApp scheduling, no-shows and lack of business control, followed by “Three steps and done”.
  • Booking confirmation step on the San Fernando Barber Club public page: summary of services, barber, date and time.
    Booking flow
  • Citavek form to create the account and the barbershop: owner details, public URL, city, brand colour and activation code.
    Barbershop sign-up
  • Sign-in form of the Citavek management panel.
    Panel sign in
02 · KYZZLaunching soon

Fashion e-commerce
with its own back office

A complete womenswear store: catalogue with variants, inventory, cart, wishlist, checkout and Wompi payments, plus a panel where the business manages products, orders, coupons and customers.

  • Wompi · Webhooks
  • Cash on delivery
  • WhatsApp · Instagram
  • Next.js 16
  • React 19
  • TypeScript
  • Node.js
  • Prisma
  • PostgreSQL
  • Tailwind CSS
  • Cloudinary

Storefront

  • Collections and categories
  • Filters and grid density
  • Colour, size and quantity
  • Size guide and shipping
  • Wishlist and cart
  • Variants and inventory
  • Checkout and payments
  • Advanced search
  • Recommendations
  • Reviews
  • Order via WhatsApp
  • Progressive free shipping
  • Order tracking

Operations panel

  • Revenue and average ticket
  • Revenue by channel
  • COD and cancellation rate
  • Order statuses
  • Products, categories, colours
  • Coupons and newsletter
  • Returns and users
  • Best sellers

Architecture and performance

  • Server Components
  • Server Actions
  • Cache Components
  • Turbopack
  • SOLID
  • Clean Code
  • Mobile-first

Scalable architecture with design patterns, security and mobile-first UX; images on Cloudinary and payments reconciled through Wompi webhooks.

KYZZ storefront hero with the Spanish headline “Kyzz: Tu estilo, tu esencia” (your style, your essence) over a new-collection photo.
  • KYZZ catalogue with category tabs, a grid-density switcher and product cards with colour variants.
    Collection and filters
  • Product page for the Vestido Slip Satén: gallery, colour, size, quantity, purchase buttons and WhatsApp enquiry.
    Product detail
  • KYZZ categories section: blouses, jackets, jumpsuits and jeans.
    Categories
  • KYZZ admin dashboard with revenue, average ticket, revenue by channel, cash on delivery and best sellers.
    Panel · Dashboard
  • KYZZ admin order list with status, channel and payment filters; customer details are blurred.
    Panel · Orders
  • KYZZ “Colección Especial” carousel with products and wishlist toggles, followed by the brand story section.
    Special collection
  • KYZZ cart with a free-shipping progress bar, order summary and “Completa tu outfit” recommendations.
    Cart and free shipping
  • KYZZ order detail with the shipping status timeline and the cash-on-delivery summary; the delivery address is blurred.
    Order tracking