Construí una app móvil de nicho con Claude Code en un fin de semana
La cifra que me rompió el cerebro fue 1 millón de dólares.
No 1 millón de dólares de por vida. No ARR de 1 millón de dólares. Un millón de dólares en un solo mes, solo en iOS, desde una aplicación que hace exactamente una cosa: apuntar con el teléfono a una moneda y recuperar su nombre y valor. Eso es CoinSnap, con alrededor de $1M/month iOS más otros $400k/month en Google Play según las estimaciones de abril de 2026 de Sensortower. El mismo estudio principal ejecuta Rock Identifier y Antique Identifier esencialmente en la misma plantilla. Una característica. Tres aplicaciones. Aproximadamente $1.4M/month combinados.
Había estado descartando silenciosamente la tendencia de la "aplicación de identificación AI" como saturada. Luego abrí App Store y miré. Hay identificadores de monedas. Identificadores de aves. Identificadores de plantas. Identificadores de hongos. Identificadores de serpientes. Identificadores de peces. Identificadores de minerales. Identificadores de etiquetas de vino. Identificadores de grado de tarjeta. La mayoría de ellos ganan seis cifras al mes. Lo sorprendente no es que existan, sino que el 80% de ellos parecen como si los hubiera construido un desarrollador junior en 2018 y todavía imprimen dinero.
Así que hice lo que cualquier ingeniero razonable haría a las 11 de la noche de un sábado. Abrí Claude Code, puse en marcha un proyecto Expo y decidí descubrir exactamente qué tan difícil es crear una de estas aplicaciones en 2026.
Spoiler: no es tan difícil. La parte difícil está en otro lugar completamente diferente. Permítanme explicarles lo que construí, lo que falló y las matemáticas que finalmente me convencieron de que las aplicaciones móviles especializadas de una sola función podrían ser el juego independiente más subestimado del año.
Por qué las aplicaciones móviles de una sola función se convirtieron silenciosamente en una mina de oro
Esta es la parte de la que nadie habla lo suficiente. El mercado de aplicaciones web es brutal en 2026. Cada nicho de SaaS tiene 40 competidores, el CAC orgánico está muerto, el CAC de pago apenas genera conversiones y una "buena" página de destino ahora necesita un sistema de ilustración personalizado y un telar del fundador.
El mercado de aplicaciones móviles es un planeta diferente. Según State of Subscription Apps 2026 de RevenueCat, la aplicación mediana gana solo $492/month, pero las aplicaciones que lo triunfan comparten tres rasgos aburridos. Resuelven un problema recurrente específico. Tienen un modelo de suscripción limpio con prueba gratuita. Atiende a un público específico que está dispuesto a pagar entre 5 y 10 dólares al mes para evitar volver a pensar en el problema.
Los coleccionistas de monedas pagarán $7.99/month para saber cuánto vale una moneda de diez centavos Mercury 1916-D sin tener que ir a una tienda. Los recolectores de hongos pagarán $9.99/month para no morir. Los aficionados a los minerales pagarán $4,99/month para no parecer estúpidos en las exposiciones de gemas. La disposición a pagar por usuario es tremendamente mayor que la de la mayoría de B2B SaaS, porque la alternativa no es "usar un competidor", sino "buscar una imagen en Google, desplazarse por 12 hilos del foro y aún no saberlo".
También hay un segundo factor que la mayoría de la gente pasa por alto: la reventa. Las aplicaciones de suscripción con MRR constante se venden en mercados como MicroAcquire, Flippa y Acquire.com con aproximadamente entre 2 y 4 veces más ganancias anuales. Por lo tanto, una aplicación de nicho que genera $4k/month en ganancias no es solo un negocio de $48k/year. Es un activo de entre 96.000 y 192.000 dólares que puedes vender cuando te aburras. Eso cambia las matemáticas sobre si vale la pena pasar dos fines de semana construyendo uno.
Pero antes de pasar a la compilación, es necesario comprender por qué el enfoque obvio: "Contrataré a un desarrollador React Native en Upwork" es la forma más lenta y costosa de hacer esto en 2026.
El stack: por qué Claude Code + React Native + Expo simplemente funciona
Probé tres pilas diferentes antes de decidirme por esta. Native Swift fue excesivo para una aplicación de pantalla única y me bloqueó el acceso a Android. Flutter estaba bien, pero las herramientas Dart alrededor del codegen AI se sentían una generación por detrás. El simple React Native (sin Expo) significaba luchar con la firma de Xcode cada vez que quería realizar la prueba en mi teléfono real.
La combinación que finalmente hizo clic: Claude Code como arquitecto y constructor, React Native como capa de interfaz de usuario y Expo Realice pruebas de dispositivos en vivo sin tener que abrir Xcode.
Aquí está la verdadera magia de Expo Go que la mayoría de los tutoriales subestiman. Instala la aplicación Expo Go en su iPhone (gratis, no se necesita una cuenta de desarrollador). Ejecuta npx expo start en su computadora portátil. Tu teléfono escanea un código QR desde el terminal. La aplicación se carga instantáneamente en tu dispositivo real, con recarga en caliente, con la cámara funcionando, con todo lo que no funciona en un simulador. No hay envío de App Store. No hay flujo de invitación a TestFlight. No hay archivos .ipa. No hay baile de firma de certificados. Cambias una línea en tu editor, la aplicación se actualiza en tu teléfono en menos de dos segundos.
Para un desarrollador independiente que itera sobre un identificador de moneda, esta es la diferencia entre el envío en un fin de semana y el envío en dos meses. Estaba realizando más de 50 ciclos de prueba en el dispositivo por hora. Con Swift nativo, quizás estés haciendo 5.
Para el lado de Claude Code, ejecuté una estrategia de modelo escalonada desde el primer día, y aquí es donde las compensaciones de Sonnet 4.6 vs Opus 4.7 que probé anteriormente se convirtieron en dinero real:
- Haiku 4.5: generación de texto estándar, estructuración de archivos, ediciones simples de componentes. Rápido, barato, lo suficientemente bueno para el trabajo estructural.
- Sonnet 4.6: el caballo de batalla. Gestión de estado, integración API, toda la lógica empresarial no trivial. A $3 de entrada / $15 de salida por millón de tokens (el precio de Anthropic a partir de febrero de 2026), es el punto óptimo de precio-rendimiento para el código de la aplicación.
- Opus 4.7: solo cuando tomo una decisión arquitectónica realmente difícil o una madriguera de depuración. Caro, pero resuelve cosas de una sola vez que Sonnet repetiría.
Para el reconocimiento de monedas real, dividí el trabajo entre la visión API de Claude y el GPT-4o de OpenAI. Más información sobre los costos matemáticos a continuación: ahí es donde el artículo se vuelve interesante.
Lo que realmente construí (y la especificación que lo hizo posible)
Antes de tocar el código, hice algo que nunca solía hacer: pasé 90 minutos en la interfaz de chat Claude.ai (no en Claude Code) redactando una especificación adecuada. Esta es la mayor actualización del flujo de trabajo que he realizado en los últimos seis meses.
El patrón es sencillo. Abres una nueva conversación en Claude.ai, pegas tu idea aproximada y le pides a Claude que te entreviste como si fuera un gerente de producto senior. Estructuras alámbricas. Flujos de usuarios. Comportamiento pantalla por pantalla. Casos extremos. Estados vacíos. Estados de carga. Estados de error. Al final de los 90 minutos, tenía una especificación de implementación de 4000 palabras que Claude Code podía ejecutar sin que tuviera que tomar cien microdecisiones a mitad de la compilación.
La especificación definió cuatro pantallas:
1. Pantalla de escaneo. Pantalla de inicio predeterminada. Gran botón circular de cámara en la parte inferior. Vista previa de la cámara en vivo que llena el 70% superior. Un interruptor de flash, un selector de galería para fotos existentes y una sola línea de texto de marcador de posición: "Centra la moneda en el marco y toca para escanear". Eso es todo. Sin menús. No hay ventana emergente de tutorial. Sin encuesta de incorporación. Toque, escanee, resultados.
2. Pantalla de resultados. Se activa después de un escaneo exitoso. Muestra la foto capturada en la parte superior, luego una tarjeta con: nombre de la moneda, país de origen, año de acuñación, denominación, rango de valor estimado (bajo/average/high), nivel de rareza (fecha común/uncommon/rare/key) y un breve párrafo de contexto histórico. Debajo de eso, dos botones: Guardar en colección y Escanear otro.
3. Pantalla de colección. Una cuadrícula de cada moneda que el usuario ha guardado. Filtrable por país, década, denominación o valor. Sistema de carpetas para que los usuarios puedan organizar conjuntos ("Lincoln Cents", "Foreign Coins", "Father's Collection"). Tarjeta de resumen que se puede tocar en la parte superior que muestra el valor total estimado de la cartera y el recuento total de monedas.
4. Pantalla del panel. Análisis visual. Desglose de países como gráfico circular. Distribución decenal como gráfico de barras. Las 5 monedas más valiosas. Valor total de la cartera a lo largo del tiempo. Esta es la pantalla que convierte la aplicación de "escáner" en "software de gestión de colecciones" y justifica la suscripción recurrente.
Le di esta especificación a Claude Code como un mensaje único. "Aquí está la especificación completa. Construya la estructura del proyecto, configure Expo, instale dependencias y organice las cuatro pantallas con datos de marcador de posición. Utilice TypeScript. Utilice React Navigation v7. Utilice Zustand para el estado. No implemente la cámara ni el API todavía; solo consígame un shell en el que se pueda hacer clic y que pueda cargar en mi teléfono".
Once minutos más tarde, estaba tocando a través de un shell en el que se podía hacer clic en mi iPhone.
El truco de UI polish que me ahorró una semana
Aquí es donde la mayoría de las aplicaciones creadas por AI se desmoronan. Claude Code puede estructurar cuatro pantallas en once minutos, pero el estilo predeterminado es, y seré honesto, genérico de una manera que grita "el desarrollador hizo esto". Componentes React Native en stock. Fuentes predeterminadas. Espaciado predecible. No tiene nada de malo. Además, no está nada bien.
La solución me llevó unos 20 minutos y es algo que ahora hago en todos los proyectos móviles.
Fui a Dribbble. Busqué "aplicación de monedas", "aplicación de colección", "IU de escáner". Tomé capturas de pantalla de seis diseños que capturaron el ambiente visual que quería: tema oscuro y cambiante, fondos de tarjetas blanquecinos, tipografía serif para el nombre de la moneda (porque las monedas son viejas y serif se siente bien) y un solo color de acento en oro pulido.
Luego colgué las seis capturas de pantalla en Claude Code con este mensaje: "Aquí hay seis diseños de referencia que coinciden con el lenguaje visual que quiero. Reescriba mis pantallas de Escaneo, Resultados y Colección para que coincidan con esta estética. Utilice un archivo de tema personalizado. Actualice la tipografía, el espaciado, los estilos de tarjetas, los estilos de botones y el sistema de color general. Mantenga todas las funciones existentes; solo cambie la capa de estilo".
Lo que volvió era irreconocible en comparación con la versión montada en el andamio. Parecía un producto real. No es perfecto: tuve que arreglar tres importaciones de íconos rotos y un encabezado de tamaño extraño, pero la brecha entre la "aplicación creada por AI" y el "producto diseñado" se cerró en 20 minutos de trabajo automatizado que le habría tomado a un diseñador independiente 8 horas y $400.
Este es el flujo de trabajo de diseño Claude Code que he estado perfeccionando para casi todos los proyectos: referencias visuales adentro, componentes pulidos afuera. También funciona en aplicaciones web, pero en dispositivos móviles el impacto es mayor porque los usuarios de dispositivos móviles juzgan la calidad de una aplicación desde la primera pantalla en menos de tres segundos.
Si prefiere que alguien cree esta pila exacta desde cero para su idea de nicho, asumo estos compromisos a través de mi perfil de Fiverr, que generalmente demora entre 7 y 10 días para obtener una aplicación funcional y con un estilo completo en TestFlight.
El backend: dónde viven realmente los costes
Aquí es donde el artículo se vuelve práctico. Construir la interfaz de usuario es la parte barata. La parte costosa, y la parte que determina si su aplicación es un negocio rentable o un pasatiempo que pierde dinero, es el costo API por escaneo.
Probé Claude y OpenAI para el reconocimiento de monedas real. Misma estructura de indicaciones, misma calidad de imagen, misma rúbrica de evaluación.
Enfoque de visión de Claude Sonnet 4.6: Envié la imagen de la moneda capturada al Claude API con una entrada de $3/M / una salida de $15/M. Una foto típica de una moneda codificada como una imagen base64 registró aproximadamente entre 1500 y 2000 tokens de entrada, según la resolución. El resultado de la respuesta JSON estructurada (nombre, país, año, rango de valores, rareza, párrafo de contexto) fue de alrededor de 350 a 500 tokens. Costo neto por escaneo: aproximadamente $0,009 por escaneo cuando incluí un mensaje del sistema de 200 tokens con mis instrucciones de identificación de monedas.
Enfoque GPT-4o: El precio de la visión de OpenAI está estructurado de manera diferente: tokens de texto a $2,50 de entrada /M / $10/M de salida, y el procesamiento de imágenes se factura como un token equivalente. Mismo mensaje, misma estructura de respuesta. Costo neto por escaneo: aproximadamente $0,005 por escaneo.
Por lo tanto, GPT-4o es significativamente más económico por escaneo. Pero, y esta es la compensación de la que nadie habla en esos tuits sin aliento "Construí una aplicación AI", Claude fue notablemente mejor en la identificación real de monedas. Especialmente en monedas extranjeras extrañas, fotografías fuera de ángulo y monedas con grabados desgastados. Ejecuté 40 imágenes de prueba en ambos. Claude acertó 36 con mucha confianza. GPT-4o acertó 31 con gran confianza y tres respuestas más de "No estoy seguro, pero tal vez" que resultaron ser incorrectas.
Para un usuario gratuito que realiza 5 escaneos al día, la diferencia de costo es irrelevante: centavos de cualquier manera. Para un usuario avanzado que realiza 50 exploraciones al día, esto suma. Entonces, mi arquitectura final: GPT-4o como escáner predeterminado para usuarios de nivel gratuito, Claude como escáner premium para suscriptores pagos. La diferencia de costo financia la diferencia de precisión. Los suscriptores obtienen mejores resultados y la economía unitaria sigue funcionando.
Las matemáticas reales a escala
Permítanme poner números reales sobre esto. Imagine que la aplicación llega a 10.000 usuarios activos al mes, una cifra modesta para una aplicación de nicho, que se puede lograr con 5.000 dólares en anuncios de TikTok y Reddit si su gancho es correcto.
Supongamos una tasa de conversión paga del 5% a $7.99/month. Eso es 500 usuarios pagos. Ingresos brutos: $3,995/month. Apple obtiene el 30 % de las suscripciones del primer año (o el 15 % según el programa para pequeñas empresas si tiene menos de $1 millón ARR). Neto después de Apple: aproximadamente $3,396/month bajo el programa para pequeñas empresas.
Ahora los costos. Los usuarios gratuitos promedian quizás 3 escaneos/month antes de abandonar o convertir. 9500 usuarios gratuitos × 3 escaneos × $0,005 (GPT-4o) = $142,50. Los usuarios pagos realizan un promedio de 25 escaneos/month. 500 usuarios pagos × 25 escaneos × $0,009 (Claude) = $112,50. Costos totales de escaneo: $255/month.
Agregar infraestructura: $20 para Supabase (DB + autenticación), $10 para RevenueCat (administración de suscripciones), $15 para Sentry (seguimiento de errores). Total: $300/month en costos operativos.
Beneficio neto con 10.000 usuarios: aproximadamente $3096/month. Anualizado: $37.000. Valor de reventa con ganancia anual triple: $111 mil.
Esas son las matemáticas que realmente deberían cambiar tu forma de pensar sobre la cola de proyectos del fin de semana.
Lo que realmente se rompió (porque siempre pasa)
Quiero ser honesto acerca de los modos de falla, porque cada uno de ellos me cuesta tiempo real.
El desastre del archivo .env. Pasé 45 minutos depurando un error 500 del Claude API el primer día. La solicitud estaba llegando al servidor. La respuesta fue siempre el mismo error de autenticación. Verifiqué cuatro veces la clave API. Finalmente me di cuenta: Expo Go no carga archivos .env desde la raíz de su proyecto de forma predeterminada como lo hace una aplicación CLI React Native normal. Necesita react-native-dotenv o necesita usar expo-constants de Expo con la configuración extra en app.json. O necesita utilizar variables de entorno con el prefijo EXPO_PUBLIC_. Estaba usando el incorrecto para la arquitectura que había configurado. La solución fueron tres líneas de configuración. Encontrarlo tomó una hora.
La biblioteca de íconos no coincide. Claude Code inicialmente desarrolló la aplicación usando @expo/vector-icons para algunas pantallas y react-native-vector-icons para otras. Tienen un aspecto similar, se instalan de forma diferente y producen errores fantasmas cuando intentas representar el nombre de un icono de una biblioteca utilizando la importación de la otra. Me di cuenta de esto porque tres botones en la pantalla Colección aparecieron como cuadrados en blanco en mi teléfono.
Permisos de cámara en iOS 18. Expo maneja bien las solicitudes de permiso, pero iOS 18 agregó un nivel donde los usuarios pueden otorgar "acceso limitado a fotografías", y mi código de selección de imágenes no manejó limpiamente el estado de acceso limitado. Los usuarios tocarían "seleccionar de la biblioteca", verían solo algunas de sus fotos y asumirían que la aplicación no funciona. La solución fue verificar el estado de acceso explícitamente y mostrar un banner que explicaba cómo otorgar acceso completo en Configuración.
El desafío de la suscripción de Apple. Esto no es un problema de código; es un problema de papeleo y es donde mueren la mayoría de las construcciones de fin de semana. Las reglas de suscripción de Apple para 2026 requieren una URL de política de privacidad, una URL de términos de servicio, divulgación completa de la duración de la suscripción y el precio de renovación en cada pantalla del muro de pago, un botón explícito de restauración y compras, y no se puede iniciar el muro de pago antes de mostrar algunas funciones principales. Las aplicaciones que tienen un muro de pago automático la primera vez que se abren son rechazadas y el ciclo de rechazo es de 24 a 48 horas cada vez. Cree el muro de pago correctamente la primera vez utilizando una herramienta como las plantillas de muro de pago prediseñadas de RevenueCat. No hagas el tuyo.
Estos modos de falla no son exclusivos de mí. Son los mismos cinco problemas que todo desarrollador independiente enfrenta en su primera aplicación React Native + Expo + AI-vision. Conocerlos de antemano ahorra un fin de semana completo.
Cuando mobile no es la opción correcta - y las alternativas más rápidas
Quiero advertir todo esto. El móvil es un gran mercado, pero es un mercado lento. La revisión de Apple tarda entre 24 y 72 horas por envío. Las suscripciones solo comienzan a pagarse 60 días después del primer cargo. Necesitas una política de privacidad. Necesita una página de términos de servicio. Necesita una cuenta de desarrollador ($99/year). Necesita entidades legales reales si desea recibir pagos de cualquier jurisdicción fuera de los EE. UU.
Si su objetivo es el camino más rápido hacia los ingresos, el móvil no lo es. Dos alternativas más rápidas que vale la pena considerar:
Aplicaciones web. Misma visión Claude API. Mismo precio. Omita el App Store por completo. Stripe se queda con un 2,9% + 30¢ en lugar del 15-30% de Apple. Puedes lanzar en un día. La contrapartida: el descubrimiento es más difícil. No existe ninguna búsqueda App Store para enviarle tráfico gratuito.
Extensiones de Chrome. Subestimado como vehículo de monetización. Chrome Web Store tiene un modelo de extensión pago y un gráfico de instalación integrado. Herramientas especializadas como "resumir este artículo de Wikipedia" o "identificar este color en cualquier página web" pueden generar entre 2.000 y 8.000 dólares/month con sorprendentemente poco marketing. Proceso de revisión: horas, no días. Refactorizar un identificador de moneda en una extensión de Chrome para "encontrar el valor de esta moneda en cualquier listado de subasta" sería un experimento paralelo fascinante.
Para mí, la respuesta siempre fue móvil, porque el comportamiento al que me dirijo es "el usuario sostiene un objeto físico y quiere saber qué es". Ese es un problema del teléfono, no del navegador. Pero si su nicho es algo que los usuarios hacen en un escritorio, la web o la extensión podrían reducir su tiempo de generación de ingresos a la mitad.
Mi lista de nichos personales
Si estuviera construyendo uno de estos desde cero este fin de semana, con todo lo que he aprendido, aquí está mi lista de clasificación real:
- Identificador de enfermedades de plantas premium AI: las aplicaciones existentes son mediocres, el cliente son jardineros que ya pagan por suscripciones de fertilizantes y el problema de reconocimiento se adapta bien a los modelos de visión actuales.
- Identificador de herramientas antiguas: la colección de herramientas antiguas es una subcultura real y desatendida, la disposición a pagar es alta y la categoría visual (objetos de metal viejos y oxidados) es una en la que los modelos de visión actuales realmente se desempeñan bien.
- Sneaker Authenticator: saturado y competitivo, pero el mercado es enorme y está dispuesto a pagar $20+/month. Modo difícil, pero el premio es mayor.
- Lector de etiquetas de vinos → Motor de recomendaciones: no solo "qué vino es este", sino "cuánto vale, dónde es más barato comprarlo y qué debo beber a continuación". Coloque la aplicación AI encima de un modelo de ingresos de afiliados.
Probablemente enviaré los números 1 y 2 en los próximos 60 días. Si creas algo a partir de esta lista, envíamelo. Me encantaría ver qué hacen otras personas con el mismo manual.
La verdadera lección de pasar un fin de semana en esto
No esperaba que esta versión cambiara mi forma de pensar sobre los proyectos independientes, pero así fue.
La conclusión no fue "AI facilita la creación de aplicaciones". Todo el mundo dice eso y ya es un cliché. La verdadera conclusión fue esta: el cuello de botella de las aplicaciones móviles independientes en 2026 ya no es la ingeniería, sino la calidad de las especificaciones, la selección de nichos y la voluntad de lanzar algo que haga una cosa.
Claude Code puede crear la aplicación. Expo puede implementarlo en su teléfono en 90 segundos. Los Vision API son lo suficientemente precisos como para alimentar un producto real. La infraestructura de suscripción (RevenueCat, Stripe, compras dentro de la aplicación de Apple) está resuelta. Ya nada de eso es la parte difícil.
La parte difícil es elegir el nicho correcto antes de comenzar, escribir una especificación estricta antes de escribir el código y resistir la tentación de agregar una quinta característica cuando tres son suficientes. Lo difícil es la disciplina para construir menos. CoinSnap no tiene red social. No tiene AR. No tiene mercado. Simplemente identifica monedas. Y está obteniendo $1M/month porque hace eso lo suficientemente bien como para que 12 millones de personas lo descarguen.
Así que aquí está la pregunta con la que me voy a enfrentar esta noche, y tal vez tú también deberías hacerlo: ¿qué es lo único que tu teléfono debería poder hacer, que nadie ha construido bien todavía, y qué te impide pasar un fin de semana averiguándolo?
Las herramientas están ahí mismo.
Trabajemos juntos
¿Quiere crear sistemas AI, automatizar flujos de trabajo o ampliar su infraestructura tecnológica? Me encantaría ayudar.
- Fiverr (compilaciones e integraciones personalizadas): fiverr.com/s/EgxYmWD
- Cartera: mejba.me
- Ramlit Limited (soluciones empresariales): ramlit.com
- ColorPark (diseño y marca): colorpark.io
- xCyberSecurity (servicios de seguridad): xcybersecurity.io