Skip to content
Back to projects

Eventya

Book an entire event from your phone and pay for it in installments.

I built Eventya: the mobile app for booking everything an event needs, plus the web apps the business runs on. I owned the architecture, the service-area model and installment billing on Stripe. Four apps are live today and the web marketplace is in progress.

eventya.mx
My role
Architecture, mobile app, web apps, payments and infrastructure
Sector
Eventos y entretenimiento
Scope
App móvil + Apps web + Marketplace
6 months
Project duration
5
Apps in ecosystem (1 in progress)
4
Roles with their own permissions
Deposit + installments
Service payment model

Stack

  • Next.js 15
  • React
  • React Native (Expo)
  • Tailwind CSS
  • Material UI
  • Node.js
  • Express
  • TypeScript
  • MongoDB
  • Docker
  • Dokploy (CD/CI)
  • MinIO
  • Stripe
  • Expo Push
  • Google Maps

Screens

Screenshots from the live system.

App móvil

Exploración de productos y servicios, favoritos, carrito y cotización por fecha y zona, con anticipos protegidos y pagos en parcialidades.

Sitio webIn progress

Marketplace web

Lo que hoy vive en la app, ahora abierto en web: el catálogo de proveedores verificados de fiestas y regalos, con filtros por categoría, localidad, precio y calificación. Cada ficha lleva sus fotos, su descripción y el configurador para cotizar. Del lado del proveedor hay una guía en video para darse de alta y una calculadora que muestra cuánto recibe después de la comisión.

App web

Aplicaciones web de operación

Portal para que los socios administren catálogo, pedidos, agenda, pagos, promociones, reseñas y evidencias desde un solo lugar.

App web

Aplicación web para colaboradores

Los colaboradores ven los trabajos disponibles y los toman. Suben de nivel, ganan bonos y consultan sus pagos.

App web

Panel de administración

Vista general del negocio con métricas, catálogo, categorías, analítica y operación del equipo.

The problem

An event is not a single purchase. Some items are bought the way any online store sells them (tables, chairs); others are services quoted against a date, an address and how far the vendor has to travel (catering, music). On top of that, each vendor only covers certain states and municipalities, and few customers can pay the full amount up front. All of it had to fit in one app, without leaving out the vendors, the field crew or the back office.

What I built

I built the whole ecosystem on a shared Node, Express and TypeScript backend with MongoDB. The React Native (Expo) app filters the catalog by state and municipality, so nothing shows up that can't actually reach the customer's address, and it runs two very different sales flows: a standard cart for products, and date-, address- and distance-based quoting for services, with the distance computed through Google Maps. Services close on a deposit and the balance is charged on the agreed dates through Stripe. On the business side I delivered the vendor portal (catalog, pricing, service areas, orders, scheduling, payouts, promotions, reviews and proof of service), the crew app where field workers claim available jobs, level up and track bonuses and payments, and the admin panel with metrics, categories and analytics. I'm now building the fifth piece: the web marketplace, with filters by category, locality, price and rating, and a calculator that shows each vendor what they take home after commission.

Technical decisions

  1. 01

    Coverage by state and municipality

    Service area is data each vendor maintains, not a cosmetic filter: the catalog is assembled against the buyer's location. Nobody gets quoted on something that can't reach them.

  2. 02

    Two sales flows, one catalog

    Products go through a cart like any storefront; services are quoted by date, address and distance via Google Maps. I modeled both against the same catalog so the buying experience never splits in two.

  3. 03

    Deposits and scheduled charges via Stripe

    I built the installment flow: a deposit closes the booking and the balance fires only on the agreed dates. The most delicate part of the project, since it moves other people's money and has to line up with the event date.

  4. 04

    Four roles on a single backend

    Customer, vendor, crew member and admin share one API and one database, each with its own interface and permission set. Pricing, coverage and orders live in one place instead of being duplicated per platform.

  5. 05

    Docker, Dokploy CI/CD and MinIO storage

    I set up containerized deployments through Dokploy and kept catalog images and proof-of-service uploads in MinIO, on our own storage rather than a third-party bucket.

“Soy el fundador de @eventya.mx trabajé con ellos, me hicieron mi app, página web y un sistema personalizado para logística, francamente estoy muy contento con su trabajo, los recomiendo al 100%”

Next project

AviaLearn

A whole flight school online: student portal, 737 systems trainers and VR.