[{"data":1,"prerenderedAt":1085},["ShallowReactive",2],{"tuvaju-travel-booking-neighbours-es-ES":3},[4,40,418,752,891],{"id":5,"title":6,"body":7,"categories":18,"dateEnd":24,"dateStart":25,"description":13,"extension":26,"image":27,"link":28,"locale":29,"meta":30,"navigation":31,"path":32,"published":31,"seo":33,"services":34,"slug":37,"stem":38,"__hash__":39},"projects\u002Fprojects\u002Fkyle-cavan.es-ES.md","Kyle Cavan: una tienda Shopify hecha para convertir — y para crecer",{"type":8,"value":9,"toc":14},"minimark",[10],[11,12,13],"p",{},"Kyle Cavan es una marca de joyería de Nueva York en Shopify con mucho tráfico móvil y una conversión baja entre descubrir un producto y completar la compra. Rediseñamos sus páginas de colección y de producto en un recorrido de compra tranquilo y paso a paso, y construimos una plantilla modular de colección que el equipo rellena sin tocar código.",{"title":15,"searchDepth":16,"depth":16,"links":17},"",2,[],[19,20,21,22,23],"Shopify","E-commerce","UI design","Desktop & mobile","Modular templates","2026-09-01","2026-07-01","md","https:\u002F\u002Fcdn1.studioprats.com\u002Fmarkdown-editor-uploads\u002Fproject_kylecavan_hero-pendants-65570e48-cda5-4ce9-8799-fca1329753e8.jpg","https:\u002F\u002Fkylecavan.com","es-ES",{},true,"\u002Fprojects\u002Fkyle-cavan.es-es",{"title":6,"description":13},[35,36],"e-commerce-shopify","redesign","kyle-cavan","projects\u002Fkyle-cavan.es-ES","Q5dKMkhCFT-plxFTeTVkuWNDsRVTiUihC_FfIsYR2oA",{"id":41,"title":42,"body":43,"categories":392,"dateEnd":15,"dateStart":405,"description":406,"extension":26,"image":407,"link":408,"locale":29,"meta":409,"navigation":31,"path":410,"published":31,"seo":411,"services":412,"slug":415,"stem":416,"__hash__":417},"projects\u002Fprojects\u002Fmedworks-longevity-membership.es-ES.md","Del MVP a la app nativa: una membresía de longevidad para una clínica premium de LA",{"type":8,"value":44,"toc":379},[45,49,56,61,75,88,92,95,99,102,108,112,115,118,124,128,131,134,141,148,152,155,158,164,167,173,176,182,188,192,207,210,233,236,240,243,288,291,295,303,314,317,321,324,361,365,376],[46,47,42],"h1",{"id":48},"del-mvp-a-la-app-nativa-una-membresía-de-longevidad-para-una-clínica-premium-de-la",[11,50,51,55],{},[52,53,54],"strong",{},"Servicios:"," Diseño UI\u002FUX · Plataforma web · App para iPhone · Sistema de membresía y créditos · Web de marketing · Integración con asistentes de IA",[57,58,60],"h2",{"id":59},"resumen","Resumen",[11,62,63,66,67,70,71,74],{},[52,64,65],{},"Medworks"," es una membresía privada de longevidad para una clínica de bienestar premium de Los Ángeles. Diseñamos y construimos toda la plataforma: una tienda de estética editorial y serena en la que los miembros de la clínica contratan una membresía mensual, acumulan créditos, reservan servicios presenciales y compran péptidos ajustados a sus propios objetivos de salud. Pasó de idea a ",[52,68,69],{},"más de 10.000 USD de ingresos recurrentes mensuales en el primer mes",". Ocho meses después, Medworks tiene ",[52,72,73],{},"cientos de miembros activos, decenas de miles de dólares en ingresos recurrentes mensuales"," y una app nativa para iPhone que sus miembros llevan a todas partes.",[76,77],"img",{"src":78,"alt":79,"width":80,"height":81,"loading":82,"className":83},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-product-catalog-68e4bd76-39fc-4f76-a6ff-546f6e84bb51.png","Catálogo de productos de la tienda para miembros de Medworks",1152,886,"lazy",[84,85,86,87],"mt-6","mx-auto","px-4","max-w-xl",[57,89,91],{"id":90},"el-cliente","El cliente",[11,93,94],{},"Robert dirige una consolidada clínica de bienestar premium en LA con una base de clientes ya establecida. Podía ofrecer péptidos legalmente a esos miembros y quería una forma segura y ágil de que pudieran comprarlos y gestionarlo todo en un solo lugar, sin la fricción de una tienda online genérica. El objetivo era una membresía que otorgara créditos mensuales para gastar en citas presenciales en la clínica, junto con una tienda privada en la que solo los miembros pudieran pedir los péptidos elegidos según sus necesidades de salud y su estilo de vida.",[57,96,98],{"id":97},"el-reto","El reto",[11,100,101],{},"No es una tienda al uso. Medworks vende dos cosas muy distintas a la vez: una membresía continua y pedidos sueltos de péptidos que solo los miembros pueden hacer. Los miembros pagan cada mes y reciben créditos para gastar en citas presenciales, mientras que sus péptidos se compran aparte, pedido a pedido, en una tienda cerrada a todos los demás. Eso implicaba acertar con un sistema de créditos de verdad —reglas de acumulación, topes mensuales, recargas de pago— junto con el manejo seguro de un producto sensible y regulado, una sensación premium y editorial que genere confianza en miembros que pagan cientos de dólares al mes, y una oferta lo bastante flexible como para cambiar de forma a medida que la clínica descubría qué querían sus miembros. Además, tenía que lanzarse rápido y seguir evolucionando con miembros de pago ya a bordo.",[76,103],{"src":104,"alt":105,"width":80,"height":106,"loading":82,"className":107},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-membership-options-c6c15c37-6f4e-4148-94c2-11ad90c722e9.png","Opciones de membresía de Medworks",896,[84,85,86,87],[57,109,111],{"id":110},"la-estrategia","La estrategia",[11,113,114],{},"Construimos Medworks sobre una única base a la que se conecta todo lo demás: una sola plataforma para miembros que reúne membresías, créditos, pedidos y reservas, con las reglas de negocio de la propia clínica integradas en ella en lugar de añadidas como un parche. Eso mantiene una experiencia fluida para los miembros y nos permite hacer cambios con seguridad y a menudo: actualizamos el producto en producción varias veces por semana sin que los miembros noten nunca una interrupción.",[11,116,117],{},"Mantener la lógica de membresía y créditos en nuestra propia plataforma significa que las reglas de negocio —los créditos de longevidad mensuales, una acumulación de un mes con un tope de doce y los créditos de recarga de 50 USD— son totalmente propias y fáciles de ajustar a medida que la oferta madura. Estructuramos el recorrido del miembro en torno a la claridad: una tienda tranquila y editorial, un onboarding guiado que acompaña a cada miembro desde el registro hasta el formulario médico, la prueba de VO2 máx. y la consulta, y una cuenta personal donde ven de un vistazo su saldo de créditos, su historial de pedidos y sus informes.",[76,119],{"src":120,"alt":121,"width":80,"height":122,"loading":82,"className":123},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-member-account-541c2282-7a5a-45ea-8171-150491fa8117.png","Cuenta de miembro de Medworks con su saldo de créditos",921,[84,85,86,87],[57,125,127],{"id":126},"sistema-de-diseño","Sistema de diseño",[11,129,130],{},"Antes de construir la primera página, montamos un sistema de diseño sencillo para Medworks: una pequeña paleta de colores, un puñado de tipografías y un conjunto de piezas —botones, campos de formulario, tarjetas— con las que se construye cada pantalla. Empieza pequeño a propósito, para que sea rápido de poner en marcha, y está pensado para crecer al ritmo del producto.",[11,132,133],{},"Esa inversión inicial se amortiza cada semana. La tienda, el panel de administración, la app para iPhone, la web de marketing e incluso los emails hablan el mismo lenguaje visual, así que Medworks se siente como una sola marca allí donde un miembro se la encuentre, y cada página nueva que añadimos se ve bien desde el primer día, en lugar de derivar hacia un mosaico de estilos.",[76,135],{"src":136,"alt":137,"width":138,"height":139,"loading":82,"className":140},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-design-colors-1e173f73-e538-4962-a351-c6697a6df05d.png","Paleta de colores del sistema de diseño de Medworks",734,295,[84,85,86,87],[76,142],{"src":143,"alt":144,"width":145,"height":146,"loading":82,"className":147},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-design-components-feee1165-51da-41df-b557-0ea618385f81.png","Componentes del sistema de diseño de Medworks: botones, campos y tarjetas",752,610,[84,85,86,87],[57,149,151],{"id":150},"el-panel-de-administración","El panel de administración",[11,153,154],{},"La experiencia del miembro era la prioridad, y una gran experiencia depende de un equipo capaz de responder rápido. Por eso construimos a Medworks su propio panel de administración junto a la tienda, dando al equipo control total de las operaciones del día a día sin necesidad de contar con nosotros. Desde un único lugar pueden gestionar miembros, ajustar saldos de créditos a mano cuando un miembro necesita ayuda, revisar suscripciones y recomendaciones de productos, y seguir el historial de VO2 máx. de cada persona. Cada movimiento de créditos queda registrado y es trazable —una recarga de suscripción, una cita reservada, una corrección manual—, de modo que el equipo de soporte puede responder cualquier duda de un miembro con seguridad. El resultado es un servicio de atención al cliente ágil y empoderado que mantiene la experiencia premium cercana y personal en cada punto de contacto.",[11,156,157],{},"El panel ahora también funciona desde el móvil, y el equipo gestiona por su cuenta una parte mayor del negocio: da de alta miembros, concede membresías de cortesía, gestiona terapias y fotos de miembros, y envía avisos directamente a la app. Los emails que acompañan a cada nuevo miembro desde la bienvenida hasta la prueba de VO2, los resultados y la consulta ahora salen solos, así que Robert ya no los envía a mano.",[76,159],{"src":160,"alt":161,"width":80,"height":162,"loading":82,"className":163},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-admin-therapies-d8ae31b6-e892-493c-9518-526276ef65d4.png","Panel de administración de Medworks: las terapias de la clínica, con su coste en créditos",544,[84,85,86,87],[11,165,166],{},"Cada miembro recibe sus propias terapias recomendadas, con instrucciones personales del equipo clínico, que luego aparecen en su móvil.",[76,168],{"src":169,"alt":170,"width":80,"height":171,"loading":82,"className":172},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-admin-member-therapies-54007743-0d09-4ec9-b8e0-50f2f72bc487.png","Panel de administración de Medworks: recomendar terapias a un miembro",720,[84,85,86,87],[11,174,175],{},"Y cuando la clínica tiene novedades, el equipo puede llegar al móvil de cada miembro en segundos.",[76,177],{"src":178,"alt":179,"width":80,"height":180,"loading":82,"className":181},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-admin-notifications-d8186e8f-0b6e-428d-bb00-ea93a6b08f5e.png","Panel de administración de Medworks: enviar una notificación al móvil de todos los miembros",400,[84,85,86,87],[76,183],{"src":184,"alt":185,"width":80,"height":186,"loading":82,"className":187},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-admin-credit-history-945a68b4-e39a-4aab-a4f1-ccf51314a3a2.png","Historial de créditos en el panel de administración de Medworks",798,[84,85,86,87],[57,189,191],{"id":190},"la-app","La app",[11,193,194,195,198,199,206],{},"Los miembros no viven en una pestaña del navegador: viven en su móvil. Por eso diseñamos y construimos ",[52,196,197],{},"Medworks Members",", una app nativa para iPhone ya ",[200,201,205],"a",{"href":202,"rel":203},"https:\u002F\u002Fapps.apple.com\u002Fus\u002Fapp\u002Fmedworks-members\u002Fid6807562957",[204],"nofollow","disponible en la App Store",".",[11,208,209],{},"Los miembros inician sesión con un solo toque desde su email y llegan a una pantalla de inicio que les dice exactamente en qué punto están: su tratamiento actual, los péptidos aprobados para ellos y las terapias que su equipo les recomienda. Desde ahí reservan y cambian sus sesiones en la clínica con sus créditos, abren sus informes de VO2 máx., ven un vídeo corto de cada terapia antes de probarla y escriben a la clínica en un chat privado. Las notificaciones dan al equipo una línea directa y personal con cada miembro.",[211,212,218,219,218,225,218,229],"div",{"className":213},[84,85,86,214,215,216,217],"max-w-3xl","grid","grid-cols-3","gap-4","\n  ",[76,220],{"src":221,"alt":222,"width":223,"height":224,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-app-home-440a1184-0fef-4392-9121-b6255b570115.png","Pantalla de inicio de la app de Medworks",600,1304,[76,226],{"src":227,"alt":228,"width":223,"height":224,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-app-book-ce5a030c-eeb3-4c81-bd71-f02c6025670b.png","Pantalla de reservas de la app de Medworks con los créditos del miembro",[76,230],{"src":231,"alt":232,"width":223,"height":224,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_medworks_medworks-app-education-336b4038-9b72-4960-9494-e6000c772a46.png","Pestaña de formación de la app de Medworks con vídeos de terapias",[11,234,235],{},"Entre bastidores, un gestor de versiones de la app nos permite llevar la mayoría de las mejoras a los móviles de los miembros el mismo día y avisar a quien tenga una versión desactualizada para que la actualice, de modo que la app sigue el ritmo de la clínica en lugar de esperar a las revisiones de la tienda.",[57,237,239],{"id":238},"cubrir-todas-las-necesidades","Cubrir todas las necesidades",[11,241,242],{},"Robert no gestiona una lista de agencias y freelancers: tiene un único socio para todo lo digital. Sea lo que sea lo que Medworks necesite a continuación, lo diseñamos, lo construimos y lo mantenemos en marcha:",[244,245,246,253,259,265,271,276,282],"ul",{},[247,248,249,252],"li",{},[52,250,251],{},"Una web pública de marketing",", donde los interesados descubren Medworks y reservan una visita privada a la clínica.",[247,254,255,258],{},[52,256,257],{},"Páginas de campaña privadas",", como la página solo por invitación que creamos para un club privado asociado de LA en torno a imágenes de la clínica, que atrajo dos de las mayores oleadas de nuevos miembros.",[247,260,261,264],{},[52,262,263],{},"La tienda para miembros",", para la membresía, los créditos, las reservas y los pedidos de péptidos exclusivos para miembros.",[247,266,267,270],{},[52,268,269],{},"La app para iPhone",", con reservas, informes, vídeos de terapias, notificaciones y un chat privado con la clínica.",[247,272,273,275],{},[52,274,151],{},", para que el equipo lleve las operaciones del día a día por su cuenta, desde el escritorio o desde el móvil.",[247,277,278,281],{},[52,279,280],{},"Emails automáticos a los miembros",", que guían a cada nuevo miembro por el onboarding con la voz propia de la clínica.",[247,283,284,287],{},[52,285,286],{},"Un conector de IA",", para poder hacer preguntas sobre el negocio en lenguaje natural.",[11,289,290],{},"Como todo sale del mismo equipo y de la misma base, un cambio en un sitio llega a todos los demás, y nada se pierde entre proveedores.",[57,292,294],{"id":293},"ia-en-la-trastienda","IA en la trastienda",[11,296,297,298,302],{},"Robert ya puede hacer a su asistente de IA preguntas como ",[299,300,301],"em",{},"«¿Cuántos miembros tienen autorizado este péptido?»"," y obtener respuestas a partir de los datos reales de la clínica, gracias a un conector seguro que integramos en el panel de administración. Sin hojas de cálculo y sin esperar a que se lo preparemos nosotros.",[11,304,305,306,309,310,313],{},"El conector habla el ",[52,307,308],{},"Model Context Protocol (MCP)",", un estándar abierto para conectar herramientas de negocio con asistentes de IA. Al ser un estándar abierto y no una integración a medida, la misma trastienda de Medworks funciona con el asistente que el equipo prefiera —",[52,311,312],{},"Claude, ChatGPT, Perplexity"," o lo que venga después—. Robert lo añade una vez, inicia sesión con su cuenta de administración habitual y ya lo tiene junto a sus chats de siempre. Nadie queda atado a una sola empresa de IA y no hay que reconstruir nada cuando llega un asistente mejor.",[11,315,316],{},"Es seguro por diseño. Cada pregunta pasa por el mismo inicio de sesión seguro que el panel de administración, el asistente solo ve lo que ese administrador tiene permiso para ver y trabaja con un pequeño conjunto de herramientas que construimos a propósito —buscar miembros, consultar productos, comprobar quién tiene autorizado qué— en lugar de recibir las llaves de la base de datos. Seguimos añadiendo herramientas a medida que el equipo descubre nuevas preguntas, así que la trastienda es más útil cada semana sin que nadie tenga que aprender una pantalla nueva.",[57,318,320],{"id":319},"bajo-el-capó","Bajo el capó",[11,322,323],{},"Para los más curiosos en lo técnico: Medworks son cuatro productos en un mismo código, que comparten lo que tienen que acordar para no desincronizarse nunca.",[244,325,326,332,338,344,350,356],{},[247,327,328,331],{},[52,329,330],{},"Plataforma para miembros y panel de administración:"," Adonis.js, Vue.js e Inertia.js, completamente tipados en TypeScript, con una base de datos PostgreSQL",[247,333,334,337],{},[52,335,336],{},"App para iPhone:"," React Native y Expo, con actualizaciones over-the-air y un gestor de versiones controlado desde el servidor",[247,339,340,343],{},[52,341,342],{},"Web de marketing:"," Nuxt, servida como sitio estático",[247,345,346,349],{},[52,347,348],{},"Librerías de código compartidas:"," contratos de la API, precios de la membresía, enlaces de reserva y direcciones de imágenes y vídeos, escritos una sola vez y usados por los tres. Cuando cambian los precios, una única actualización llega a la vez a la web, al checkout y a la app.",[247,351,352,355],{},[52,353,354],{},"Piezas propias de Studio Prats:"," nuestra librería interna de gestión de errores, usada igual en el servidor y en el móvil, además de especificaciones vivas de cada funcionalidad y una revisión de código asistida por IA que comprueba cada cambio frente a nuestros estándares antes de publicarlo",[247,357,358,360],{},[52,359,54],{}," alojamiento en Render.com, Cloudflare para imágenes y vídeo, chat de Intercom, monitorización de errores con Sentry y un conector MCP seguro para asistentes de IA",[57,362,364],{"id":363},"los-resultados","Los resultados",[11,366,367,368,371,372,375],{},"Medworks superó los ",[52,369,370],{},"10.000 USD de ingresos recurrentes mensuales en su primer mes",". Hoy tiene ",[52,373,374],{},"cientos de miembros activos y decenas de miles de dólares en ingresos recurrentes mensuales",". Funciona sobre una plataforma, una app para iPhone y una web que son totalmente de la clínica, y seguimos lanzando mejoras cada semana.",[11,377,378],{},"Lo próximo: llevar la app a Android y convertir el enfoque de Robert, «del registro a la retención», en funcionalidades que hagan que los miembros sigan volviendo a la clínica.",{"title":15,"searchDepth":16,"depth":16,"links":380},[381,382,383,384,385,386,387,388,389,390,391],{"id":59,"depth":16,"text":60},{"id":90,"depth":16,"text":91},{"id":97,"depth":16,"text":98},{"id":110,"depth":16,"text":111},{"id":126,"depth":16,"text":127},{"id":150,"depth":16,"text":151},{"id":190,"depth":16,"text":191},{"id":238,"depth":16,"text":239},{"id":293,"depth":16,"text":294},{"id":319,"depth":16,"text":320},{"id":363,"depth":16,"text":364},[393,394,395,396,397,398,399,400,401,402,403,404],"Full stack","Adonis.js","Vue.js","Inertia.js","React Native","Expo","Nuxt","Typescript","PostgreSQL","Mobile app","AI","MVP","2026-01-23","Servicios: Diseño UI\u002FUX · Plataforma web · App para iPhone · Sistema de membresía y créditos · Web de marketing · Integración con asistentes de IA","https:\u002F\u002Fimages.studioprats.com\u002Fcdn-cgi\u002Fimagedelivery\u002F4Ewkge9dUdpwStfFFsHDXA\u002Fb94e4b4b-6586-427e-0f63-afd3d59a4300\u002Fw=1536,format=auto,fit=scale-down,quality=85","https:\u002F\u002Fhealthbymedworks.com\u002F",{},"\u002Fprojects\u002Fmedworks-longevity-membership.es-es",{"title":42,"description":406},[413,414,36],"mobile-app-development","web-development","medworks-longevity-membership","projects\u002Fmedworks-longevity-membership.es-ES","n44wseFqIKpxgSqiyP2ISWQYXubq2MnmTG8dMFDIVdw",{"id":419,"title":420,"body":421,"categories":735,"dateEnd":15,"dateStart":741,"description":742,"extension":26,"image":743,"link":744,"locale":29,"meta":745,"navigation":31,"path":746,"published":31,"seo":747,"services":748,"slug":749,"stem":750,"__hash__":751},"projects\u002Fprojects\u002Ftuvaju-travel-booking.es-ES.md","De una web de reservas a una plataforma para agencias de viajes: Tuvaju y Velintis",{"type":8,"value":422,"toc":721},[423,426,431,433,439,446,451,453,456,459,461,464,467,473,475,478,481,487,490,506,508,511,514,522,524,527,532,535,540,543,549,552,556,563,569,572,578,581,586,588,591,634,637,641,644,658,661,663,666,703,707,713,716,718],[46,424,420],{"id":425},"de-una-web-de-reservas-a-una-plataforma-para-agencias-de-viajes-tuvaju-y-velintis",[11,427,428,430],{},[52,429,54],{}," Arquitectura de producto · Diseño UI\u002FUX · Plataforma de reservas y pagos · Panel de administración · Web de marketing · Sistema de diseño · Observabilidad · Desarrollo asistido por IA",[57,432,60],{"id":59},[11,434,435,438],{},[52,436,437],{},"Tuvaju"," nació como el MVP de una web de reservas en la que los viajeros compran entradas y tours para lo mejor que se puede hacer en Tailandia, desde excursiones de un día a las islas Phi Phi hasta cruceros por el río en Bangkok. Se conecta con un proveedor de tickets para acceder al instante a cientos de atracciones, y permite al fundador publicar sus propios tours seleccionados a mano para conseguir mejores márgenes.",[11,440,441,442,445],{},"En cuanto Tuvaju empezó a vender, el fundador vio una oportunidad mayor: todas las agencias de viajes de Tailandia tienen el mismo problema que él acababa de resolver. Así que Tuvaju se convirtió en el buque insignia de ",[52,443,444],{},"Velintis",", un sistema completo de venta online que otras agencias de viajes pueden comprar y con el que pueden estar vendiendo en cinco semanas. Diseñamos y construimos ambos, y funcionan sobre la misma base.",[76,447],{"src":448,"alt":449,"width":80,"height":171,"loading":82,"className":450},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_tuvaju-home-317634fc-8b5c-4137-96a6-04f24f93b395.png","Portada de Tuvaju: Explore Thailand, con un buscador de destinos",[84,85,86,87],[57,452,91],{"id":90},[11,454,455],{},"Dirk llevó en su día su propia agencia de viajes hasta convertirla en un negocio de éxito. Tenía la audiencia, el conocimiento del sector y una visión clara. Lo que le faltaba era una base técnica propia, para poder vender directamente a los viajeros en lugar de hacer pasar a todo el mundo por la plataforma de otro, y más adelante vender ese mismo sistema a otras agencias.",[11,457,458],{},"Nos reunimos cada semana. Dirk trae lo que le cuentan viajeros y agencias, y nuestro equipo analiza el feedback real de los usuarios y las analíticas. Convertimos ambas cosas en cambios en el producto en producción, normalmente en cuestión de días.",[57,460,98],{"id":97},[11,462,463],{},"Un buen tráfico solo da fruto si hay un producto listo para recibirlo. Tuvaju necesitaba traer inventario en vivo desde un proveedor de tickets, presentar cientos de atracciones y tours de forma clara y permitir reservar y pagar en pocos minutos, todo ello manteniéndose rápido y fiable en el móvil. No había tecnología previa ni equipo de diseño.",[11,465,466],{},"Después, el objetivo creció. Una web de reservas pensada para una sola agencia tenía que convertirse en algo que Dirk pudiera vender a muchas: con su propia marca, su propia web para explicarlo, precios claros en dos monedas y una forma de lanzar una nueva agencia en semanas en lugar de meses. Y todo ello sin frenar la web en producción, que ya estaba recibiendo reservas.",[76,468],{"src":469,"alt":470,"width":80,"height":471,"loading":82,"className":472},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_tuvaju-attraction-96d7e385-0886-4420-b20e-cfd4533f4033.png","Página de la atracción Hanuman World en Tuvaju, con fotos, tickets y un botón de Book now",840,[84,85,86,87],[57,474,111],{"id":110},[11,476,477],{},"Construimos Tuvaju sobre una única base a la que se conecta todo lo demás, con las reglas de negocio integradas en ella en lugar de añadidas como un parche: atracciones, tickets, precios, disponibilidad, reservas y pagos. Eso es lo que hizo posible el salto a Velintis. El motor de reservas, el panel de administración y los emails automáticos que Tuvaju demostró en producción son los mismos que Velintis ofrece ahora a otras agencias.",[11,479,480],{},"Estructuramos el recorrido del viajero en torno a la confianza. Cada atracción tiene una página clara con fotos, opciones de ticket, qué incluye y reseñas reales. Los viajeros buscan por destino, pagan de forma segura con Stripe en la moneda que prefieran y reciben sus e-tickets por email justo después del pago, seguidos de un recordatorio antes del viaje. Sin imprimir nada y sin esperar una respuesta.",[76,482],{"src":483,"alt":484,"width":80,"height":485,"loading":82,"className":486},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_tuvaju-reviews-7afa0ba5-5d16-4528-9140-96c2412a1205.png","Reseñas de viajeros en Tuvaju",457,[84,85,86,87],[11,488,489],{},"La mayoría de las reservas se hacen desde el móvil, muchas veces de camino al aeropuerto, así que cada página se diseñó pensando primero en el móvil.",[211,491,218,493,218,498,218,502],{"className":492},[84,85,86,214,215,216,217],[76,494],{"src":495,"alt":496,"width":223,"height":497,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_m-tuvaju-home-07c01f7c-9fed-4597-a678-159bd4de1625.png","Portada de Tuvaju en el móvil",1298,[76,499],{"src":500,"alt":501,"width":223,"height":497,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_m-tuvaju-attraction-17a21634-7ad7-409b-ba42-bb761a1c9598.png","Página de una atracción de Tuvaju en el móvil",[76,503],{"src":504,"alt":505,"width":223,"height":497,"loading":82},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=600,quality=80,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_m-tuvaju-tickets-39e0e260-b083-40e3-ad77-6f60b6dc3bc1.png","Opciones de ticket de Tuvaju en el móvil, con precio y botón de Book now",[57,507,127],{"id":126},[11,509,510],{},"Antes de construir la primera página, montamos un sistema de diseño con la marca del proyecto: una pequeña paleta de colores de marca con una escala completa para cada uno, una gama de grises neutros, colores para los mensajes de éxito, aviso y error, un par de tipografías y un conjunto de piezas (botones, enlaces, campos de formulario, tarjetas, paneles laterales) con las que se construye cada pantalla. Lo hacemos en todos los proyectos desde el primer día. Es rápido de poner en marcha y está pensado para crecer al ritmo del producto.",[11,512,513],{},"Esa inversión inicial se amortiza cada semana. Las páginas se montan con esas piezas en lugar de maquetarse una a una, así que cada página nueva se ve bien el mismo día en que se publica, y un cambio de marca es una sola edición en lugar de una búsqueda por toda la web. Cuando llegó Velintis con su propia marca, también tuvo su propio sistema de diseño, y su web lo siguió desde la primera línea de código.",[76,515],{"src":516,"alt":517,"width":518,"height":519,"loading":82,"className":520},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_velintis-design-system-f5788cd0-2a9d-4232-8efa-1f12b8dd71ba.png","Sistema de diseño de Velintis: colores de marca, neutros slate, escala ocean blue, colores semánticos y escalas teal y naranja",586,1015,[84,85,86,521],"max-w-xs",[57,523,151],{"id":150},[11,525,526],{},"Una web de reservas es tan buena como el equipo que hay detrás. Por eso construimos un panel de administración completo junto a la tienda, que da al equipo el control de las operaciones del día a día sin necesitar nunca a un desarrollador. Desde un único lugar añaden atracciones y tickets, suben fotos, fijan precios en cualquiera de las monedas de la web y gestionan la disponibilidad, los horarios, las horas de apertura, las condiciones de cancelación y las recogidas en hotel. También escriben artículos del blog y ocultan una atracción de la web pública con un solo interruptor cuando todavía no está lista para venderse.",[76,528],{"src":529,"alt":530,"width":80,"height":171,"loading":82,"className":531},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_admin-attractions-89936886-267b-4226-b081-f1a6b05cfd96.png","Panel de administración de Tuvaju: el listado de atracciones",[84,85,86,87],[11,533,534],{},"Cada ticket reúne todo lo que necesita en un solo lugar, en pestañas que el equipo aprende en minutos.",[76,536],{"src":537,"alt":538,"width":80,"height":171,"loading":82,"className":539},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_admin-ticket-1a5fc3a7-9791-4c3c-adb7-9a752358f46e.png","Panel de administración de Tuvaju: edición de un ticket, con pestañas de contenidos, precios, imágenes, disponibilidad, horarios, cancelación y recogida, y reseñas",[84,85,86,87],[11,541,542],{},"Y cada reserva se puede seguir desde el pago hasta el día del viaje, con su e-ticket adjunto.",[76,544],{"src":545,"alt":546,"width":80,"height":547,"loading":82,"className":548},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_admin-bookings-e94425b3-3383-4fa1-9b45-b1048b9a4911.png","Panel de administración de Tuvaju: el listado de reservas con su estado y fecha de viaje",448,[84,85,86,87],[11,550,551],{},"A medida que el equipo crecía, el panel creció con él: cuentas separadas para cada persona, roles estándar y super para que solo las personas adecuadas gestionen a otros administradores, y la opción de elegir cuánto tiempo permanece cada uno con la sesión iniciada. Hoy el equipo de Dirk añade nuevos tours por su cuenta y graba un vídeo corto cada vez que algo podría ir más fluido, lo que se convierte en nuestra siguiente mejora.",[57,553,555],{"id":554},"velintis-el-sistema-de-una-agencia-listo-para-muchas","Velintis: el sistema de una agencia, listo para muchas",[11,557,558,559,562],{},"Velintis reúne todo lo que Tuvaju demostró en lo que llama un ",[52,560,561],{},"Business-in-a-Box para agencias de viajes",": una web de reservas profesional, pagos seguros, e-tickets al instante, emails automáticos, conexión con un proveedor de tickets y el panel de administración, configurado y lanzado para una nueva agencia en cinco semanas.",[76,564],{"src":565,"alt":566,"width":80,"height":567,"loading":82,"className":568},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_velintis-biab-4f7e0bb1-29d2-4cf8-ac13-22c34a09c701.png","Sección Business-in-a-Box de Velintis, con las pestañas de tienda, automatización, administración y marketing",1068,[84,85,86,87],[11,570,571],{},"Construimos velintis.com para venderlo: una web de marketing rápida y optimizada para buscadores, en inglés, español y tailandés, con una página para reservar una demo guiada, preguntas frecuentes y una explicación clara de cómo el sistema convierte un proceso de venta lineal y manual en un ciclo que no deja de traer reservas.",[76,573],{"src":574,"alt":575,"width":80,"height":576,"loading":82,"className":577},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_velintis-loop-45767a05-e8a7-4d67-97ec-2ef6dbd68047.png","El ciclo de crecimiento de Velintis: panel de administración, atraer, motor de ventas web, automatización, repetir",1049,[84,85,86,87],[11,579,580],{},"Los precios pasaron por varias rondas mientras Dirk probaba la oferta con agencias. Ahora muestran tres paquetes, cada uno con una licencia de pago único, una tarifa de implementación y lanzamiento y una cuota anual de alojamiento y mantenimiento, con el total del primer año bien visible, en baht tailandeses o en euros. Cada ronda de precios llegó a la web en producción en cuestión de días.",[76,582],{"src":583,"alt":584,"width":80,"height":171,"loading":82,"className":585},"https:\u002F\u002Fcdn1.studioprats.com\u002Fcdn-cgi\u002Fimage\u002Fwidth=1152,quality=80,fit=scale-down,format=auto\u002Fmarkdown-editor-uploads\u002Fproject_velintis_velintis-pricing-e8ddd114-57e4-48e9-bc45-5038767b4857.png","Precios de Velintis: paquetes Launch, Pro y Premium con su inversión del primer año",[84,85,86,87],[57,587,239],{"id":238},[11,589,590],{},"Dirk no gestiona una lista de agencias y freelancers. Tiene un único socio para todo lo digital:",[244,592,593,599,605,611,616,622,628],{},[247,594,595,598],{},[52,596,597],{},"La web de reservas de Tuvaju",", donde los viajeros encuentran, reservan y pagan tours y atracciones por toda Tailandia.",[247,600,601,604],{},[52,602,603],{},"Una conexión en vivo con un proveedor de tickets",", que trae nuevos tickets y mantiene al día por sí sola los precios, la disponibilidad y las reseñas.",[247,606,607,610],{},[52,608,609],{},"Emails automáticos para los viajeros",": pago recibido, reserva confirmada, e-tickets y un recordatorio antes del viaje.",[247,612,613,615],{},[52,614,151],{},", para que el equipo gestione el catálogo y las reservas por su cuenta.",[247,617,618,621],{},[52,619,620],{},"La web de marketing de Velintis",", en tres idiomas y dos monedas, con consentimiento de cookies y analítica que respetan la normativa europea de privacidad.",[247,623,624,627],{},[52,625,626],{},"Dos sistemas de diseño",", uno por marca, para que cada una se vea coherente allí donde la encuentre un cliente.",[247,629,630,633],{},[52,631,632],{},"Monitorización",", para que los problemas salgan a la luz por nuestra parte antes de que un viajero tenga que avisar.",[11,635,636],{},"Como todo sale del mismo equipo y de la misma base, una corrección o una nueva funcionalidad creada para Tuvaju queda lista también para todas las agencias de Velintis.",[57,638,640],{"id":639},"construido-con-ia-como-es-debido","Construido con IA, como es debido",[11,642,643],{},"Aquí un equipo pequeño entrega como uno grande porque usamos la IA con disciplina, no como un atajo.",[244,645,646,649,652,655],{},[247,647,648],{},"Varios agentes de programación con IA trabajan en paralelo en distintas funcionalidades, y cada uno escribe el código, los tests y la documentación de su propio cambio.",[247,650,651],{},"Cada funcionalidad empieza como una especificación escrita que se queda en el código, así que el comportamiento del producto queda documentado a medida que se construye y no depende de ningún modelo de IA concreto.",[247,653,654],{},"Una revisión de código automática con IA comprueba cada cambio contra nuestros propios estándares escritos antes de publicarlo.",[247,656,657],{},"Escribimos skills de agente a medida, incluida una para el sistema de diseño de cada marca, para que los agentes construyan páginas fieles a la marca y depuren más rápido y con más certeza.",[11,659,660],{},"El resultado: más de 360 cambios revisados publicados en el producto en producción desde el primer commit.",[57,662,320],{"id":319},[11,664,665],{},"Para los más curiosos en lo técnico: Tuvaju y Velintis son dos aplicaciones en un mismo código, que comparten herramientas y estándares.",[244,667,668,674,679,685,691,697],{},[247,669,670,673],{},[52,671,672],{},"Plataforma de reservas y panel de administración:"," Adonis.js, Vue.js e Inertia.js, totalmente tipados en TypeScript, con una base de datos PostgreSQL y un diseño orientado a eventos y al dominio que mantiene las reglas de negocio fáciles de ampliar",[247,675,676,678],{},[52,677,342],{}," Nuxt, prerenderizada como sitio estático, con design tokens de Tailwind CSS y traducciones en inglés, español y tailandés",[247,680,681,684],{},[52,682,683],{},"Integraciones:"," Tiqets para el inventario de tickets y los pedidos, Stripe Checkout para los pagos, Typesense para la búsqueda instantánea y Postmark para los emails transaccionales",[247,686,687,690],{},[52,688,689],{},"Cloudflare:"," almacenamiento en R2 con redimensionado de imágenes al vuelo, para que los móviles descarguen solo el tamaño de imagen que necesitan",[247,692,693,696],{},[52,694,695],{},"Observabilidad:"," trazas de OpenTelemetry y logs estructurados enviados a SigNoz",[247,698,699,702],{},[52,700,701],{},"Calidad:"," más de 160 archivos de tests automáticos de backend entre tests unitarios, funcionales y de integración, además de tests para la web de marketing, todos ejecutados en CI en cada cambio, junto con especificaciones OpenSpec y revisión de código con IA de CodeRabbit",[57,704,706],{"id":705},"testimonio","Testimonio",[708,709,710],"blockquote",{},[11,711,712],{},"Trabajar con Ivan y Studio Prats ha sido genial, especialmente la comunicación y la forma en que aportó su propia experiencia y feedback al producto.",[11,714,715],{},"— Dirk van der Zaan, Fundador, Tuvaju y Velintis",[57,717,364],{"id":363},[11,719,720],{},"Tuvaju está en producción y recibe reservas en Bangkok, Phuket, Krabi, Pattaya, Chiang Mai y más destinos, gestionada en el día a día por el propio equipo de Dirk. Velintis convirtió ese mismo sistema en un producto: una agencia de viajes puede pasar ahora de la primera llamada a vender online en cinco semanas, sobre una plataforma que ya ha demostrado su valor con viajeros reales.",{"title":15,"searchDepth":16,"depth":16,"links":722},[723,724,725,726,727,728,729,730,731,732,733,734],{"id":59,"depth":16,"text":60},{"id":90,"depth":16,"text":91},{"id":97,"depth":16,"text":98},{"id":110,"depth":16,"text":111},{"id":126,"depth":16,"text":127},{"id":150,"depth":16,"text":151},{"id":554,"depth":16,"text":555},{"id":238,"depth":16,"text":239},{"id":639,"depth":16,"text":640},{"id":319,"depth":16,"text":320},{"id":705,"depth":16,"text":706},{"id":363,"depth":16,"text":364},[393,394,395,396,399,400,401,736,737,738,739,740,403,404],"TailwindCSS","SaaS","B2C","B2B","Travel","2025-08-01","Servicios: Arquitectura de producto · Diseño UI\u002FUX · Plataforma de reservas y pagos · Panel de administración · Web de marketing · Sistema de diseño · Observabilidad · Desarrollo asistido por IA","https:\u002F\u002Fcdn1.studioprats.com\u002Fmarkdown-editor-uploads\u002Fproject_tuvaju_hero-railay-beach-7118abb7-8e96-4845-a1d4-90444622e0d9.jpg","https:\u002F\u002Fvelintis.com",{},"\u002Fprojects\u002Ftuvaju-travel-booking.es-es",{"title":420,"description":742},[414,36],"tuvaju-travel-booking","projects\u002Ftuvaju-travel-booking.es-ES","qyMf5lf7vcVZicukC0S1cL-Y0lNt5J0z_Nuz9WBIO3c",{"id":753,"title":754,"body":755,"categories":877,"dateEnd":879,"dateStart":880,"description":881,"extension":26,"image":882,"link":883,"locale":29,"meta":884,"navigation":31,"path":885,"published":31,"seo":886,"services":887,"slug":888,"stem":889,"__hash__":890},"projects\u002Fprojects\u002Fllamacarlos-e-commerce.es-ES.md","MVP de e-commerce con servicios vinculados",{"type":8,"value":756,"toc":872},[757,760,766,768,778,797,801,824,827,841,845,855,862],[46,758,754],{"id":759},"mvp-de-e-commerce-con-servicios-vinculados",[11,761,762,765],{},[52,763,764],{},"Rol:"," Líder de arquitectura e implementación Full-stack",[57,767,60],{"id":59},[11,769,770,773,774,777],{},[52,771,772],{},"Llama Carlos"," es una comunidad de telesalud dirigida a la población latina, que ayuda a las personas a mejorar su bienestar mediante educación guiada, soporte de productos y seguimientos personalizados. Cuando me incorporé, el equipo ya tenía una misión sólida, una investigación de audiencia validada y una narrativa clara, pero carecía de la ",[52,775,776],{},"base técnica"," para convertir su concepto en un servicio funcional.",[11,779,780,781,784,785,788,789,792,793,796],{},"El principal reto era lanzar un MVP ",[52,782,783],{},"rápidamente"," manteniendo el sistema lo bastante flexible como para crecer más adelante hacia una experiencia de salud digital totalmente integrada. El negocio necesitaba no solo una tienda para vender productos de bienestar, sino también un ",[52,786,787],{},"espacio de comunidad",", ",[52,790,791],{},"flujos de onboarding guiados"," y una ",[52,794,795],{},"capa central de orquestación de backend"," para garantizar la consistencia de los datos en todos los puntos de contacto.",[57,798,800],{"id":799},"enfoque","Enfoque",[11,802,803,804,807,808,811,812,815,816,819,820,823],{},"Para soportar tanto una alta velocidad de iteración como la viabilidad a largo plazo, diseñé una arquitectura ligera centrada en una ",[52,805,806],{},"tienda Shopify"," para el e-commerce, ",[52,809,810],{},"Circle.io"," para la participación en la comunidad y el contenido educativo, ",[52,813,814],{},"Jotform"," para el onboarding y los cuestionarios de salud, y un ",[52,817,818],{},"backend personalizado en Node.js (Typescript)"," que actuaba como ",[52,821,822],{},"fuente de verdad"," y como el pegamento que lo unía todo.",[11,825,826],{},"Este enfoque nos permitió:",[244,828,829,832,835,838],{},[247,830,831],{},"Lanzar una experiencia de producto pulida y funcional en semanas en lugar de meses.",[247,833,834],{},"Aprender del comportamiento real de los clientes de inmediato.",[247,836,837],{},"Añadir y modificar funcionalidades con rapidez sin desestabilizar el sistema.",[247,839,840],{},"Mantener la propiedad de la lógica de negocio central y de los registros de usuario en nuestro backend, asegurando escalabilidad y extensibilidad futura.",[57,842,844],{"id":843},"resultado","Resultado",[11,846,847,848,850,851,854],{},"En solo unas semanas, ",[52,849,772],{}," pudo poner un producto real en manos de los usuarios, empezar a recoger feedback y refinar el servicio a partir de la experiencia vivida, no de suposiciones. La arquitectura soportó una ",[52,852,853],{},"iteración rápida",", rutas claras de expansión de funcionalidades y los flujos operativos necesarios para gestionar el negocio desde el primer día.",[11,856,857,858,861],{},"El MVP unió con éxito ",[52,859,860],{},"comercio, educación y atención guiada",", formando la base sobre la que hacer crecer un ecosistema de telesalud mayor.",[11,863,864,865,868,869,206],{},"Ahora la tienda recibe ",[52,866,867],{},"cientos de usuarios cada día"," sin fricciones, experimentando continuamente con estrategias de precios, mensajes y participación de la comunidad para ",[52,870,871],{},"escalar la marca hacia una notoriedad e impacto enormes",{"title":15,"searchDepth":16,"depth":16,"links":873},[874,875,876],{"id":59,"depth":16,"text":60},{"id":799,"depth":16,"text":800},{"id":843,"depth":16,"text":844},[878,19,400,404],"Back-end","2025-07-13","2025-04-28","Rol: Líder de arquitectura e implementación Full-stack","https:\u002F\u002Fllamacarlos.com\u002Fcdn\u002Fshop\u002Ffiles\u002FPhone.png?v=1751850566&width=1080","https:\u002F\u002Fllamacarlos.com",{},"\u002Fprojects\u002Fllamacarlos-e-commerce.es-es",{"title":754,"description":881},[35,414],"llamacarlos-e-commerce","projects\u002Fllamacarlos-e-commerce.es-ES","bCitjJZeJNSrGnJ2QNT3DFMTAD3zFfW2kugQCHxI2xg",{"id":892,"title":893,"body":894,"categories":1072,"dateEnd":1074,"dateStart":1075,"description":1076,"extension":26,"image":1056,"link":1077,"locale":29,"meta":1078,"navigation":31,"path":1079,"published":31,"seo":1080,"services":1081,"slug":1082,"stem":1083,"__hash__":1084},"projects\u002Fprojects\u002Fvq-score-web-app.es-ES.md","Aplicación web para calcular el VQ Score de los clientes",{"type":8,"value":895,"toc":1066},[896,899,908,910,925,936,940,1010,1014,1047,1051,1054,1058,1062],[46,897,893],{"id":898},"aplicación-web-para-calcular-el-vq-score-de-los-clientes",[11,900,901,903,904,907],{},[52,902,764],{}," Desarrollador Full-stack principal y asesor de UX\u002FUI\n",[52,905,906],{},"Stack:"," Vue.js, Node.js, Typescript, Tailwind, PostgreSQL, SQL, Monorepo, DigitalOcean, Figma, Datadog, Retool",[57,909,60],{"id":59},[11,911,912,913,916,917,920,921,924],{},"Desarrollé la versión MVP de ",[52,914,915],{},"VQ",", una aplicación web utilizada para calcular y presentar una ",[52,918,919],{},"\"Value Quotient\" (VQ) Score"," de los usuarios a partir de datos guiados y de comportamiento. El objetivo del proyecto era entregar un ",[52,922,923],{},"MVP rápido de iterar"," con alta calidad de código, una fuerte observabilidad y una UX que guiara a los usuarios con fluidez a través del proceso de puntuación.",[11,926,927,928,931,932,935],{},"El producto necesitaba validar pronto las hipótesis clave, por lo que el ",[52,929,930],{},"prototipado rápido + el feedback de uso real"," fueron el centro del enfoque de desarrollo. Lideré la implementación técnica y también aporté ",[52,933,934],{},"orientación de UI\u002FUX"," para refinar los flujos, reducir la fricción y alinear la experiencia de puntuación con el tono de marca.",[57,937,939],{"id":938},"responsabilidades-y-contribuciones","Responsabilidades y contribuciones",[244,941,942,948,958,979,985],{},[247,943,944,947],{},[52,945,946],{},"Desarrollo ágil e iterativo:","\nConstruí el producto mediante un ciclo de feedback rápido en el que el cliente podía probar la aplicación de forma continua y hacer evolucionar las ideas de producto de manera colaborativa.",[247,949,950,953,954,957],{},[52,951,952],{},"Type Safety de extremo a extremo:","\nImplementé una arquitectura de ",[52,955,956],{},"monorepo totalmente tipado"," — desde el esquema de PostgreSQL hasta los servicios de backend y el frontend en Vue — garantizando fiabilidad y mantenibilidad.",[247,959,960,963,964,967,968],{},[52,961,962],{},"Observabilidad y analítica de uso:","\nConfiguré ",[52,965,966],{},"Datadog Real User Monitoring (RUM)"," para monitorizar:\n",[244,969,970,973,976],{},[247,971,972],{},"Rendimiento y errores del frontend",[247,974,975],{},"Logs y uso de recursos del backend",[247,977,978],{},"Comportamiento del usuario y flujos de navegación\nEsto permitió al cliente tomar decisiones de producto informadas a partir de datos reales de interacción.",[247,980,981,984],{},[52,982,983],{},"Testing y CI\u002FCD:","\nAñadí tests de integración y los integré en el pipeline de CI\u002FCD para asegurar la calidad y reducir las regresiones entre despliegues.",[247,986,987,990,991,994,995],{},[52,988,989],{},"Herramientas internas y de administración:","\nImplementé un panel de administración basado en ",[52,992,993],{},"Retool"," para ofrecer visibilidad inmediata de:\n",[244,996,997,1000,1003],{},[247,998,999],{},"Actividad de los usuarios",[247,1001,1002],{},"Distribución de puntuaciones",[247,1004,1005,1006,1009],{},"Métricas operativas y de uso\nEsto se entregó en ",[52,1007,1008],{},"menos de 2 horas de ingeniería",", maximizando el apalancamiento y reduciendo la sobrecarga de desarrollo.",[57,1011,1013],{"id":1012},"impacto","Impacto",[244,1015,1016,1026,1033,1040],{},[247,1017,1018,1019,1022,1023,206],{},"Entregué un ",[52,1020,1021],{},"MVP funcional y testeable"," rápidamente, permitiendo al cliente ",[52,1024,1025],{},"validar las hipótesis de producto con usuarios reales",[247,1027,1028,1029,1032],{},"Mejoré la toma de decisiones de producto gracias a una ",[52,1030,1031],{},"alta observabilidad e insights basados en datos"," en lugar de suposiciones.",[247,1034,1035,1036,1039],{},"Creé una ",[52,1037,1038],{},"base de código escalable"," con fuertes garantías de corrección gracias al tipado de extremo a extremo.",[247,1041,1042,1043,1046],{},"Permití al cliente operar el producto y revisar las métricas de negocio clave ",[52,1044,1045],{},"sin dependencia continua de desarrollo"," a través del panel de Retool.",[57,1048,1050],{"id":1049},"capturas-de-la-aplicación","Capturas de la aplicación",[11,1052,1053],{},"Puedes probarla tú mismo en el enlace del proyecto, o aquí tienes algunas capturas adjuntas:",[76,1055],{"src":1056,"loading":82,"className":1057},"\u002Fimages\u002Fprojects\u002Fvq-score-screenshot-1.avif",[84,85,86,87],[76,1059],{"src":1060,"loading":82,"className":1061},"\u002Fimages\u002Fprojects\u002Fvq-score-screenshot-2.avif",[84,85,86,87],[76,1063],{"src":1064,"loading":82,"className":1065},"\u002Fimages\u002Fprojects\u002Fvq-score-screenshot-3.avif",[84,85,86,87],{"title":15,"searchDepth":16,"depth":16,"links":1067},[1068,1069,1070,1071],{"id":59,"depth":16,"text":60},{"id":938,"depth":16,"text":939},{"id":1012,"depth":16,"text":1013},{"id":1049,"depth":16,"text":1050},[393,395,1073,400,401,404,736],"Node.js","2023-08-01","2023-02-01","Rol: Desarrollador Full-stack principal y asesor de UX\u002FUI\nStack: Vue.js, Node.js, Typescript, Tailwind, PostgreSQL, SQL, Monorepo, DigitalOcean, Figma, Datadog, Retool","https:\u002F\u002Fapp.tryvq.com\u002F",{},"\u002Fprojects\u002Fvq-score-web-app.es-es",{"title":893,"description":1076},[414],"vq-score-web-app","projects\u002Fvq-score-web-app.es-ES","Z_-CM9kEDk2iamXsZAExQgwO3Ful7ELDcc0dpSPQw1Y",1791559894346]