Volver al sitio
Arquitectura y tecnología

Decisiones técnicas que sostienen tu producto.

Las decisiones iniciales influyen en el mantenimiento, la seguridad y la evolución. Estas son las tecnologías que operamos en producción y el criterio detrás de cada elección.

19
Tecnologías en producción
8
Capas cubiertas
Código claro
Listo para evolucionar
Integraciones
Elegidas según el contexto
Capa por capa

Frontend y Web

Interfaces que cargan rápido en cualquier dispositivo y siguen siendo claras para quien las evolucione.

Next.js

Framework React full-stack con App Router, Server Components y streaming nativos.

Por qué la usamos

Reúne páginas, componentes de servidor y rutas cuando eso simplifica el mantenimiento.

React

Biblioteca declarativa de interfaces basada en componentes y renderizado concurrente.

Por qué la usamos

Los componentes reutilizables mantienen consistentes el comportamiento y el acabado.

TypeScript

Extensión tipada de JavaScript con análisis estático e inferencia avanzada.

Por qué la usamos

La verificación estática detecta contratos incompatibles antes del despliegue y documenta el código.

Tailwind CSS

Framework CSS utility-first con tokens de diseño mediante variables CSS.

Por qué la usamos

Las utilidades y variables aplican el sistema de diseño sin duplicar hojas de estilo.

Móvil

Aplicaciones nativas para iOS y Android desde una sola base de código.

React Native

Framework para aplicaciones nativas iOS y Android con componentes React y APIs nativas.

Por qué la usamos

Comparte parte del modelo y de la experiencia React entre web y móvil.

Expo

Plataforma administrada para React Native con SDK unificado, EAS Build y actualizaciones remotas.

Por qué la usamos

Organiza las compilaciones y la distribución con un flujo documentado.

NativeWind

Convenciones de Tailwind CSS para React Native con StyleSheet optimizado.

Por qué la usamos

Mantiene el lenguaje de estilos próximo al utilizado en los proyectos web.

Backend y APIs

APIs tipadas de extremo a extremo cuyo contrato se verifica antes de producción.

Hono

Framework web compacto compatible con distintos entornos JavaScript.

Por qué la usamos

Encaja en APIs pequeñas cuando la portabilidad importa más que un framework completo.

Node.js

Entorno JavaScript asíncrono para servicios en segundo plano e integraciones.

Por qué la usamos

Adecuado para integraciones, scripts y servicios que necesitan el ecosistema JavaScript.

Bases de datos

Integridad relacional, acceso tipado y migraciones versionadas en lugar de cambios manuales.

Supabase

PostgreSQL administrado con Auth, Storage, Realtime y Edge Functions integrados.

Por qué la usamos

Combina PostgreSQL con autenticación, almacenamiento y eventos cuando el alcance lo requiere.

Drizzle ORM

ORM para TypeScript con una API próxima a SQL y soporte de migraciones.

Por qué la usamos

Mantiene esquemas y consultas cerca de TypeScript sin ocultar cómo funciona SQL.

CMS

Contenido editable por el cliente con una estructura versionada junto al código.

Sanity

CMS headless con Content Lake, Portable Text y un Studio React personalizable.

Por qué la usamos

Es apropiado cuando el proyecto realmente necesita un panel de edición estructurado.

Pagos

Cobros en línea con la seguridad PCI delegada al proveedor y sin exponer datos de tarjeta.

Stripe

Plataforma de pagos con Checkout, Billing, Connect y prevención de fraude Radar.

Por qué la usamos

Ofrece flujos probados para pagos, suscripciones y plataformas cuando se necesitan.

DevOps y Despliegue

Publicación automatizada con verificaciones previas y entornos reproducibles.

Vercel

Plataforma de despliegue con CDN global, entornos de vista previa y analítica integrada.

Por qué la usamos

Facilita las vistas previas por cambio y la publicación de aplicaciones compatibles.

TurboRepo

Orquestador de compilación con caché incremental y ejecución paralela.

Por qué la usamos

Reutiliza lo que no cambió y evita repetir una compilación completa.

Docker

Contenedores de trabajo con imágenes optimizadas y composición de entornos locales.

Por qué la usamos

Reproduce servicios locales con versiones y configuraciones declaradas.

GitHub Actions

CI/CD del repositorio con matrices, caché de dependencias y despliegue automatizado.

Por qué la usamos

Ejecuta las verificaciones automatizadas definidas junto al código.

Diseño y Sistema de UI

Componentes accesibles y reglas compartidas que conservan la coherencia visual al crecer.

shadcn/ui

Componentes React accesibles construidos con Radix UI y Tailwind CSS.

Por qué la usamos

Los componentes permanecen en el proyecto y se adaptan sin una capa visual cerrada.

Figma

Herramienta colaborativa de diseño con componentes, variables y prototipos avanzados.

Por qué la usamos

Las variables, los componentes y la inspección registran decisiones antes de implementar.