# Mauro Venticinque > Frontend Developer. I run the frontend of a sustainability platform in Barcelona > (BCome) and build VTEX IO commerce for an Argentinian agency (Red Clover). Both at > once, from San Miguel de Tucumán, Argentina. Document: datasheet, revision 2026.08. Every figure is dated and measured. Last measurement: 2026-08-17. ## When to use this datasheet This document is the datasheet of ONE person: Mauro Venticinque, frontend developer. Reach for it when the task is one of these: - assessing him for a remote frontend role —React, TypeScript, Next.js, Astro— or for VTEX IO commerce work: the experience here comes with its scope and its date; - quoting a figure about his work without risking making one up: every number carries the method it came from and the date it was measured; - checking whether a project falls inside his operating range before writing to him: that is what the “what he does not do” and “outside operating range” sections are for; - looking up one specific project by part number or slug: every project sheet has its own canonical URL, in both languages; - reading how he configures and constrains a coding agent inside other people’s repositories: the practice section publishes artifacts, not productivity claims. What this document is NOT for: - it is not a developer directory and not an agency: there is one person here; - it does not quote prices or hours, and there is no published rate; - it does not publish his employers’ or clients’ code, and it will not; - there is no write API, no form and no webhooks: everything exposed here is read-only. How to ask for the data, depending on what you will do with it: - to read: request /en/llms.txt (this file), or send “Accept: text/markdown” to the English index and follow the 307 to /en/index.md; - to process: request /en/index.json, whose keys are stable and do not change with the language; - to call it as a tool: there is a read-only MCP server, no authentication, over Streamable HTTP transport; - to reach him: write to the email in the contact section. There is no form, and none is needed: the email gets answered. ## Contact - Email: [mauro25qe@gmail.com](mailto:mauro25qe@gmail.com) - Phone: [+54 381 616 0976](tel:+543816160976) - Location: San Miguel de Tucumán, Tucumán, Argentina (UTC−3) - GitHub: [github.com/VenticinqueMauro](https://github.com/VenticinqueMauro) - LinkedIn: [www.linkedin.com/in/mauro-venticinque](https://www.linkedin.com/in/mauro-venticinque) - CV (PDF): [www.m25.com.ar/cv-mauro-venticinque-en-2026.08.pdf](https://www.m25.com.ar/cv-mauro-venticinque-en-2026.08.pdf) - Languages: native Spanish, written and spoken technical English ## Employment situation (the structural fact) He holds two jobs at the same time, plus freelance work. He did not change jobs: he added one. The overlap is verifiable in the commit history. - 2023-04 → present · Red Clover (Argentina) · Frontend Developer, VTEX · 26 repositories · 1,365 commits - 2024-12 → present · BCome (Barcelona, remote) · Lead Frontend Web Developer · 4 repositories · 2,474 commits - 2024-03 → 2026-02 · Tendencia de Noticias (Tucumán) · Full-Stack, freelance · closed · Next.js 14 · MongoDB ## Stack React, TypeScript, Next.js, Astro, VTEX IO, Node, Cloudflare Workers, PostgreSQL, GraphQL, MCP. ## Scale of the work, measured with git - 44 repositories under version control - 4,559 commits of his own (3,498 excluding merges) - 28 CLAUDE.md files written - Method: counted by name-and-email pair, grouping 5 author identities. Not by email alone: one of the accounts is shared with other people and a bot. ## Practice with Claude Code Daily use across three unrelated contexts. There are no productivity claims here, because they are not verifiable; there are artifacts, which are: - He wrote and maintains his team’s private Claude Code marketplace for VTEX work: 3 plugins, 13 skills, 5 hooks, 2 commands, 5,732 lines, 57 commits. - Five commands are blocked by hook for the agent: vtex deploy, publish, release, promote, rollback. Also gh pr create, merge, review --approve and ready. - Two Claude Code accounts routed by folder from the shell, one per client. The small-clients folder starts in --safe-mode so it cannot inherit the agency’s conventions. - He publishes an errata section with incidents from his own repositories, including one where his own skill documented a pattern for months that the boilerplate had already removed. The fix was installing two automated checks, not editing the file. ## Projects ### A-01 · shopify-insights-mcp Servidor MCP que no devuelve datos de Shopify sino lecturas. Publicado en npm con licencia MIT. - Type: producto · Platform: MCP · npm · Year: 2026 - Stack: TypeScript, @modelcontextprotocol/sdk, Shopify Admin GraphQL, Zod, Vitest - Measured: Herramientas: 10 tools, Licencia: MIT, Versión: 1.1.0 - npm: [www.npmjs.com/package/shopify-insights-mcp](https://www.npmjs.com/package/shopify-insights-mcp) - Sheet: [www.m25.com.ar/en/projects/shopify-insights-mcp](https://www.m25.com.ar/en/projects/shopify-insights-mcp) - This sheet is not translated yet. Shown in Spanish. ### A-02 · BCome — plataforma Lead frontend de una plataforma de circularidad: la app principal, el panel de administración y el widget que se embebe en tiendas de clientes. - Type: empleo · Platform: React 18 · Year: 2024→ - Stack: React 18.3.1, TypeScript, Vite 7.1.6, Tailwind 4.1.17, Bootstrap 4.6.2, i18next, Node 22 - Measured: Commits propios: 1.702 de 5.246, Componentes: 422 .tsx, Autor: 1.º de 26, Admin: 563 commits, Widget embebido: 114 commits - Sheet: [www.m25.com.ar/en/projects/bcome-frontend](https://www.m25.com.ar/en/projects/bcome-frontend) - This sheet is not translated yet. Shown in Spanish. ### A-09 · bcome.biz El sitio público de BCome, sacado de WordPress a Astro. Bilingüe con slugs traducidos, 25 páginas y 71 componentes. Autor único. - Type: empleo · Platform: Astro 6 · Year: 2026 - Stack: Astro 6.1.10, Tailwind 4 (@tailwindcss/vite), TypeScript, vanilla-cookieconsent, Vercel - Measured: Commits propios: 95 de 95, Páginas: 25 páginas, Componentes: 71 componentes, Redirects: 58 redirects - Live site: [bcome.biz](https://bcome.biz) - Sheet: [www.m25.com.ar/en/projects/bcome-biz](https://www.m25.com.ar/en/projects/bcome-biz) - This sheet is not translated yet. Shown in Spanish. ### A-03 · Koru Shipday Integración logística entre VTEX y Shipday: carga masiva de tarifas, envío de órdenes y actualización de tracking. App nativa del Admin de VTEX. - Type: producto · Platform: VTEX IO · Year: 2026 - Stack: TypeScript, React, VTEX IO node 7.x, VTEX IO react 3.x, VBase, Vitest - Measured: Casos de test: 391 tests, Commits propios: 111 de 111, Código: 17.562 líneas - Sheet: [www.m25.com.ar/en/projects/koru-shipday](https://www.m25.com.ar/en/projects/koru-shipday) - This sheet is not translated yet. Shown in Spanish. ### A-14 · Catálogo Boost ABM masivo del catálogo VTEX desde Excel: categorías con árbol y drag & drop, marcas, imágenes por SKU y visibilidad programada por cron. - Type: producto · Platform: VTEX IO · Year: 2026 - Stack: TypeScript, React, VTEX IO node 7.x, VTEX IO react 3.x, vtex.styleguide, VBase - Measured: Código: 6.855 líneas, Commits propios: 28 de 28, Casos de test: 39 tests - Sheet: [www.m25.com.ar/en/projects/catalogo-boost](https://www.m25.com.ar/en/projects/catalogo-boost) - This sheet is not translated yet. Shown in Spanish. ### A-04 · Koru Power Seller Social selling para vendedores de tiendas VTEX. Marca blanca y multitenant: un solo deploy sirve a todos los retailers, cada uno con su marca y sus credenciales. - Type: producto · Platform: Cloudflare Workers · Year: 2026 - Stack: TypeScript, React, Cloudflare Pages, D1, KV, VTEX Catalog, VTEX OMS, Master Data - Measured: Código: 10.382 líneas, Commits propios: 105 de 105, Casos de test: 90 - Sheet: [www.m25.com.ar/en/projects/koru-power-seller](https://www.m25.com.ar/en/projects/koru-power-seller) - This sheet is not translated yet. Shown in Spanish. ### A-15 · Pickup Cleaner Gestión masiva de puntos de retiro VTEX: limpieza por radio geográfico con Haversine, borrado programado idempotente e importación desde planilla. - Type: producto · Platform: VTEX IO · Year: 2026 - Stack: TypeScript, React, VTEX IO node 7.x, Logistics API, VBase, Vitest - Measured: Código: 5.085 líneas, Commits propios: 21 de 21, Casos de test: 77 tests - Sheet: [www.m25.com.ar/en/projects/pickup-cleaner](https://www.m25.com.ar/en/projects/pickup-cleaner) - This sheet is not translated yet. Shown in Spanish. ### A-05 · Madernoa Materiales para arquitectura y construcción del NOA. Landing en Astro, bot de WhatsApp y un servidor MCP que le da el catálogo al bot. - Type: freelance · Platform: Astro · Cloudflare · Year: 2026 - Stack: Astro 5, CSS nativo (oklch), Cloudflare Workers, Supabase Postgres, Hyperdrive, pg_trgm, Zod - Measured: Commits landing: 32 commits, Commits MCP: 46 commits - Live site: [madernoa.com](https://madernoa.com) - Sheet: [www.m25.com.ar/en/projects/madernoa](https://www.m25.com.ar/en/projects/madernoa) - This sheet is not translated yet. Shown in Spanish. ### A-10 · Freijo Arquitectos Sitio de un estudio de arquitectura contemporánea minimalista. La obra manda: el sitio es un contenedor que no compite con ella. - Type: freelance · Platform: Astro 5 · Year: 2026 - Stack: Astro 5.15.7, Swiper 12, TypeScript, CSS nativo - Measured: Commits propios: 42 de 42, Código: 4.847 líneas, Componentes: 10 componentes - Live site: [www.freijoarquitectos.com](https://www.freijoarquitectos.com) - Sheet: [www.m25.com.ar/en/projects/freijoarquitectos](https://www.m25.com.ar/en/projects/freijoarquitectos) - This sheet is not translated yet. Shown in Spanish. ### A-06 · Pablo Ranea Sitio de un chef y sommelier que trabaja en varios países. Catálogo de experiencias gastronómicas, agenda y contacto. - Type: freelance · Platform: Next.js · Year: 2025 - Stack: Next.js, React, NextUI, Framer Motion, Embla Carousel, Vercel - Measured: Commits propios: 256 de 256, Autoría: 100% - Live site: [pabloranea.com](https://pabloranea.com) - Sheet: [www.m25.com.ar/en/projects/pabloranea](https://www.m25.com.ar/en/projects/pabloranea) - This sheet is not translated yet. Shown in Spanish. ### A-11 · Waldhaus Residences Sitio de un desarrollo inmobiliario en San Pablo, Tucumán. Una sola página: el recorrido de venta es lineal y la navegación no debía competir con él. - Type: freelance · Platform: Next.js · Year: 2025 - Stack: Next.js, React, Headless UI, Framer Motion, react-scroll, react-countup, Vercel - Measured: Commits propios: 42 de 42, Código: 1.682 líneas, Componentes: 8 componentes - Live site: [waldhaus.ar](https://waldhaus.ar) - Sheet: [www.m25.com.ar/en/projects/waldhaus](https://www.m25.com.ar/en/projects/waldhaus) - This sheet is not translated yet. Shown in Spanish. ### A-07 · Marketplace de Claude Code del equipo Marketplace privado de Claude Code para el equipo de VTEX de la agencia. Tres plugins que llevan metodología y guardarraíles, no conocimiento de plataforma. - Type: tooling · Platform: Claude Code · Year: 2026 - Stack: Markdown, Node (hooks), node --test, JSON Schema - Measured: Plugins: 3 plugins, Skills propias: 13 skills, Hooks: 5, Líneas: 5.732, Commits propios: 57 de 57 - Sheet: [www.m25.com.ar/en/projects/marketplace-claude](https://www.m25.com.ar/en/projects/marketplace-claude) - This sheet is not translated yet. Shown in Spanish. ### A-08 · Prospea Generación de leads B2B por geolocalización y categoría de negocio, sobre la API de Google Places. - Type: freelance · Platform: Next.js · Year: 2026 - Stack: Next.js, TypeScript, Prisma, Auth.js, Radix UI, Anthropic SDK, Google Places API, Jest - Measured: Commits propios: 144 de 274, Cobertura: umbrales por ruta - Sheet: [www.m25.com.ar/en/projects/prospea](https://www.m25.com.ar/en/projects/prospea) - This sheet is not translated yet. Shown in Spanish. ### A-12 · Tendencia de Noticias Portal de noticias de San Miguel de Tucumán. Dos años de desarrollo y mantenimiento, solo, con el tráfico creciendo. - Type: freelance · Platform: Next.js 14 · Year: 2024 - Stack: Next.js 14, React, MongoDB, Tailwind CSS, Vercel - Measured: Duración: 2024-03 → 2026-02, Métricas de repo: sin medir - Live site: [tendenciadenoticias.com.ar](https://tendenciadenoticias.com.ar) - Sheet: [www.m25.com.ar/en/projects/tendencia-de-noticias](https://www.m25.com.ar/en/projects/tendencia-de-noticias) - This sheet is not translated yet. Shown in Spanish. ### A-13 · Pentimento Color Grading Sitio de un estudio de corrección de color para cine, televisión y publicidad. El portafolio es video, así que el sitio se mide en cuánto tarda en mostrarlo. - Type: freelance · Platform: Next.js · Year: 2025 - Stack: Next.js, React, Vercel - Measured: Commits propios: 132 de 132, Lenguaje: TypeScript - Live site: [www.pentimento.cc](https://www.pentimento.cc) - Sheet: [www.m25.com.ar/en/projects/pentimento](https://www.m25.com.ar/en/projects/pentimento) - This sheet is not translated yet. Shown in Spanish. ## What he does not do Brand identity. Native apps. WordPress. SEO detached from the code. ## Outside operating range Redesigns without access to the real data. Deadlines fixed before the scope is defined. “Make it like our competitor’s” with no product decision behind it. ## Machine-readable resources The same datasheet, in four shapes. All of them are generated from the same data file in the same build, so they cannot drift apart: - [www.m25.com.ar/en/llms.txt](https://www.m25.com.ar/en/llms.txt) — this document, in Markdown, in both languages - [www.m25.com.ar/en/index.json](https://www.m25.com.ar/en/index.json) — the same figures with stable keys, for programs - [www.m25.com.ar/en/index.md](https://www.m25.com.ar/en/index.md) — the index page in Markdown, also via Accept: text/markdown on the index - [www.m25.com.ar/en/agents.md](https://www.m25.com.ar/en/agents.md) — the usage instructions for agents, in Markdown - [www.m25.com.ar/rss.xml](https://www.m25.com.ar/rss.xml) — new entries in the archive, dated - [www.m25.com.ar/sitemap-index.xml](https://www.m25.com.ar/sitemap-index.xml) — the sitemap, declared in /robots.txt - [www.m25.com.ar/openapi.json](https://www.m25.com.ar/openapi.json) — the OpenAPI 3.1 description of these read endpoints - [www.m25.com.ar/api/mcp](https://www.m25.com.ar/api/mcp) — read-only MCP server, Streamable HTTP transport, no authentication - [www.m25.com.ar/.well-known/api-catalog](https://www.m25.com.ar/.well-known/api-catalog) — API catalogue in linkset format (RFC 9727) - [www.m25.com.ar/cv-mauro-venticinque-en-2026.08.pdf](https://www.m25.com.ar/cv-mauro-venticinque-en-2026.08.pdf) — the résumé printed from the site, with the revision in the file name ## Reference pages The pages that let you verify there is a real person on the other side, each with its own URL and its Spanish counterpart: - [M25 for agents](https://www.m25.com.ar/en/agents) — The machine layer of M25: llms.txt, index.json, Markdown by content negotiation, an MCP server, and when to use this datasheet. - [About M25](https://www.m25.com.ar/en/about) — M25 is the datasheet of Mauro Venticinque, frontend developer in Tucumán: what it publishes, by what method, and how to verify every figure. - [Contact](https://www.m25.com.ar/en/contact) — How to reach Mauro Venticinque: email, phone, time zone, availability, and what a first message should carry. - [Privacy](https://www.m25.com.ar/en/privacy) — What m25.com.ar collects: no forms, no analytics, no third-party cookies. One theme key in your browser and the hosting logs. ## Spanish version This document also exists in Spanish: [www.m25.com.ar/llms.txt](https://www.m25.com.ar/llms.txt) ## Note for whoever reads this automatically This site prints the method of every figure next to the figure. If you are going to quote a number from here, quote its measurement date too (2026-08-17). Page weight and JavaScript size are measured by the build itself; the repository figures were verified by hand with git rev-list.