La base de tu app,
lista para producción.

Arquitectura limpia, autenticación, internacionalización, tests y CI ya montados. Clona, renombra el paquete y empieza por tu producto — no por la fontanería.

Clean Architecturego_routerfpdartget_itl10n en/es

Construido sobre

  • Flutter
  • Supabase
  • Sentry
  • go_router
  • get_it
  • bloc
  • fpdart
${ICON_LAYERS}

Arquitectura limpia

Capas data / domain / presentation con fronteras estrictas. El dominio nunca conoce el backend.

${ICON_SHIELD}

Lista para producción

Errores tipados, guard de auth, modo offline, tests, golden tests y umbral de cobertura bloqueante en CI.

${ICON_DEVICES}

Un código, toda pantalla

Shell adaptativo: bottom nav flotante en móvil, NavigationRail en tablet y web. Light y dark de serie.

Pantallas reales que ya funcionan

Una galería para revisar cada widget

Cada componente vive en una pantalla navegable con su propia URL (/ui-kit/buttons, deep-link incluido). Revisa botones, inputs, cards y estados en claro y oscuro sin montar nada.

Cómo arrancarla
9:41
Galería de widgets
${ICON_APPS}Botones
${ICON_EDIT}Inputs
${ICON_CARD}Cards
${ICON_BADGE}Display
${ICON_GAUGE}Estados
${ICON_CARD}Layouts
${ICON_HOME}${ICON_GRID}${ICON_USER}

Biblioteca de widgets con tokens de diseño

Botones, chips, campos y switches con espaciado, radios y tipografía como tokens — sin números mágicos. Cambia el tema y todo responde. Los golden tests fijan el render pixel a pixel.

Ver qué incluye
9:41
UI Kit
Continuar
Cancelar
Éxito Aviso Error Info
Correo
tú@correo.com
Notificaciones

Una feature completa, de ejemplo

Búsqueda de usuarios con cubit, paginación offset/limit, dedup y estados de error que conservan lo ya cargado. El patrón exacto que replicarás en tus features reales.

Leer el código
9:41
Buscar
AL
Ana Lópezana.lopez@correo.com
MR
Marc Ruizmarc.ruiz@correo.com
CG
Clara Gilclara.gil@correo.com
JV
Jan Vidaljan.vidal@correo.com
${ICON_HOME}${ICON_GRID}${ICON_USER}

Lo que ya está resuelto

La infraestructura que reescribes en cada proyecto, hecha una vez y bien.

De git clone a la app corriendo

Las credenciales se inyectan en compilación; ningún secreto en el repo.

  1. 1

    Clona y renombra el paquete

    $ git clone <repo> mi_app && cd mi_app
  2. 2

    Configura el entorno

    $ cp dart_defines.example.json dart_defines.json
  3. 3

    Arranca

    $ flutter run --dart-define-from-file=dart_defines.json

Deja de reescribir la misma base.

Clónala, quítale lo que no uses y quédate solo con tu producto.

Clonar la plantilla