← Volver a los proyectos Aplicación móvil · Automoción

Aplicación móvil V. Parrot Garage

Una aplicación móvil Flutter conectada a la API de V. Parrot Garage para consultar, filtrar y explorar los vehículos disponibles.

Aplicación móvil V. Parrot Garage
PROYECTO

El proyecto

Una aplicación Dart y Flutter que consume la API Symfony del garaje, con búsqueda de vehículos, filtros avanzados, fichas detalladas, galerías de imágenes y un formulario de contacto para consultas.

Arquitectura Móvil & Ecosistema Flutter

Aplicación móvil multiplataforma desarrollada con Flutter y Dart para iOS y Android. Se conecta directamente a la API REST del backend Symfony del Garage V. Parrot para proporcionar a los usuarios móviles una búsqueda de vehículos de ocasión rápida, táctil y fluida.

┌─────────────────────────────────────────────────────────────────────────────┐
│              V. Parrot Garage Mobile App — Flutter & Dart                   │
└──────────────────────────────────────┬──────────────────────────────────────┘
                                       │
           ┌───────────────────────────┼───────────────────────────┐
           ▼                           ▼                           ▼
  📱 UI & State Management      📡 API Client & HTTP         💾 Local Cache & Offline
  • Flutter Material 3 Widgets • Symfony REST Connector    • CachedNetworkImage
  • Multi-criteria range slider • JSON Model Deserializer   • SQLite / SharedPreferences
  • Touch carousel gestures     • Async HTTP Error recovery • Offline catalog inspection
  • 1-Tap native dialer (tel:)  • Post lead contact payload • Network connectivity guard
            

Código Único para iOS & Android

Desarrollo multiplataforma de alto rendimiento con componentes Material 3 nativos y animaciones a 60 FPS.

Conector API REST Symfony

Sincronización asíncrona en tiempo real con el inventario de coches y la taxonomía de marcas.

Generación de Contactos en Móvil

Acceso inmediato al marcador telefónico nativo (tel:) y formularios de consulta con el identificador del vehículo.

1. Módulos Funcionales & Experiencia de Usuario

Diseñada para convertir las visitas móviles en llamadas y visitas al taller:

Deslizadores Táctiles de Rango

Deslizadores de doble control para ajustar precio, kilometraje y año sin retrasos.

Detalle del Coche & Carrusel de Fotos

Galería a pantalla completa con gestos táctiles (swipe), zoom en fotos y desglose del equipamiento del vehículo.

Consultas & Prueba de Vehículos

Envío instantáneo de solicitudes de presupuesto con inclusión automática del ID del coche consultado.

Horarios & Localización GPS

Consulta de horarios de apertura actualizados y navegación directa por GPS hacia el taller.

2. Stack Tecnológico & Arquitectura Móvil

  • Framework & Lenguaje: Flutter 3.x & Dart con compilación nativa ARM para un rendimiento óptimo en iOS y Android.
  • Capa de Red HTTP: Cliente HTTP asíncrono con control de timeouts, deserialización JSON y recuperación ante fallos de conexión.
  • Gestión de Estado: Arquitectura reactiva que independiza la lógica de negocio de los componentes de la interfaz.
  • Gestión de Caché de Imágenes: Caché inteligente de miniaturas para una navegación fluida incluso con conexiones de datos lentas.

3. Endpoints de la API REST Utilizados

La aplicación móvil se comunica con los endpoints JSON del backend Symfony:

Method Endpoint URL Uso en la App Móvil Tratamiento de Datos
GET /api/vehicules Carga del inventario de coches de ocasión aplicando filtros JSON Array (Desérialisation Dart Model)
GET /api/marques-modeles Carga de los menús dependientes de marcas y modelos Arborescence hiérarchique Marques & Modèles
POST /api/contact Envío de la consulta de contacto vinculada al vehículo visualizado { nom, email, tel, message, vehiculeId }

4. Matriz de Rendimiento Técnico

Componente Móvil Implementación Técnica Beneficio para el Usuario
Motor Multiplataforma Flutter 3.x + Dart Cross-Platform Engine Experiencia Nativa Máxima fluidez y apariencia idéntica en iPhone y teléfonos Android
Flujo Asíncrono HTTP Client + Asynchronous Stream Listeners Sin Bloqueos La interfaz se mantiene siempre interactiva durante las llamadas de red
Caché de Imágenes CachedNetworkImage + Lazy Disk Storage Ahorro de Datos Carga instantánea de vehículos visualizados con anterioridad
Llamada Telefónica Nativa url_launcher (tel:, mailto:) Contacto Directo Llamada directa al taller en 1 toque sin tener que marcar manualmente

Ver el Código de la Aplicación Móvil

Explora el código fuente completo de la app Flutter y Dart en GitHub.

Ver Código Flutter en GitHub ↗