Bienvenido a la plantilla Flutter, una base sólida para construir aplicaciones sorprendentes con Flutter. Esta plantilla está diseñada para proporcionar una estructura organizada y eficiente para el desarrollo de aplicaciones móviles, permitiéndote centrarte en la creación de características innovadoras y una experiencia de usuario excepcional.
Esta aplicación Flutter es mucho más que un simple punto de partida. Es un ecosistema completo que combina las mejores prácticas de desarrollo, herramientas de vanguardia y una selección de dependencias poderosas para acelerar tu proceso de desarrollo.
Con un diseño extensible y modular, esta plantilla te ofrece la flexibilidad necesaria para adaptarse a cualquier tipo de proyecto. Ya sea que estés construyendo una aplicación de comercio electrónico, una aplicación de productividad o una innovadora aplicación de medios, esta plantilla proporciona una base sólida que puedes personalizar y ampliar según tus necesidades específicas.
- Requisitos Previos
- Instalación
- Estructura del Proyecto
- Configuración
- Uso
- Pruebas unitarias
- Características
- Contribución
- Licencia
- Dart SDK y Flutter SDK instalados
- Otros requisitos específicos...
-
Clona este repositorio :
git clone https://github.com/SangheliosBlack/Flutter-Template.git
-
Instala las dependencias :
flutter pub get
-
Configuracion de Variables de Entorno
- Crea un archivo .env en el directorio raíz.
- Sigue el formato especificado env.example.
-
Inicia la aplicacion :
flutter run
El proyecto sigue una estructura organizada para facilitar la comprensión y mantenimiento del código. A continuación, se detalla la estructura del proyecto:
- /lib: Contiene el código fuente de la aplicación Flutter.
/blocs
: Lógica de negocio y gestión del estado utilizando BLoC./helpers
: Funciones y utilidades auxiliares./routes
: Configuración de las rutas de la aplicación./services
: Lógica de servicios y comunicación con API./themes
: Configuración de temas y estilos./utils
: Utilidades generales.
Instrucciones sobre cómo configurar el servidor, incluyendo variables de entorno y otros ajustes necesarios.
Detalles sobre cómo usar el servidor, ejemplos de llamadas a la API, y cualquier otra información relevante.
En el directorio test
, encontrarás las siguientes pruebas unitarias:
Archivo |
---|
test |
├── business_logic_test.dart |
├── utility_functions_test.dart |
├── external_services_test.dart |
├── state_management_test.dart |
├── ui_widgets_test.dart |
├── navigation_test.dart |
├── error_handling_test.dart |
├── performance_test.dart |
├── data_persistence_test.dart |
└── ui_update_test.dart |
El proyecto cuenta con las siguientes características, gracias a las dependencias utilizadas:
-
flutter_launcher_icons (^0.13.1): Permite personalizar los íconos de la aplicación para las plataformas Android e iOS.
-
liquid_pull_to_refresh (^3.0.1): Proporciona un widget de arrastre para actualizar similar a un líquido.
-
expandable_page_view (^1.0.17): Ofrece una vista de página que se puede expandir para proporcionar una experiencia de usuario más dinámica.
-
curved_navigation_bar (^1.0.3): Implementa una barra de navegación inferior curvada para una navegación más atractiva.
-
font_awesome_flutter (^10.5.0): Ofrece acceso a la biblioteca de iconos Font Awesome en Flutter.
-
shared_preferences (^2.2.0): Facilita el almacenamiento persistente de pequeñas cantidades de datos clave-valor en la aplicación.
-
flutter_stripe (^9.5.0+1): Permite la integración de pagos con la plataforma de Stripe.
-
flutter_dotenv (^5.1.0): Carga variables de entorno desde un archivo
.env
para la configuración de la aplicación. -
fluttertoast (^8.2.2): Proporciona notificaciones Toast en la aplicación.
-
flutter_bloc (^8.1.3): Implementa el patrón de estado BLoC para gestionar el estado de la aplicación de manera eficiente.
-
google_fonts (^5.1.0): Permite el uso de fuentes personalizadas de Google Fonts en la aplicación.
-
flutter_svg (^2.0.7): Facilita la renderización de imágenes SVG en Flutter.
-
local_auth (^2.1.7): Brinda soporte para la autenticación biométrica y de huellas dactilares.
-
auto_route (^7.8.0): Simplifica la configuración de rutas de navegación en Flutter.
-
animate_do (^3.1.2): Proporciona animaciones atractivas para los elementos de la interfaz de usuario.
-
ansicolor (^2.0.2): Permite la colorización de la salida en la consola para una mejor legibilidad de los logs.
-
equatable (^2.0.5): Facilita la comparación y copia de objetos de manera eficiente.
-
hidable (^1.0.5): Permite ocultar y mostrar elementos de la interfaz de usuario de manera dinámica.
-
logging (^1.2.0): Proporciona una infraestructura de registro para la aplicación.
-
get_it (^7.6.0): Un contenedor de servicios para la inyección de dependencias.
-
http (^1.1.0): Proporciona funcionalidades HTTP para realizar solicitudes y recibir respuestas.
-
mockito (^5.0.15): Permite la creación de objetos de imitación para realizar pruebas de manera controlada.
-
auto_route_generator (^7.2.0): Genera código para la navegación declarativa.
-
flutter_lints (^2.0.0): Conjunto de reglas y configuraciones de linter para proyectos Flutter.
-
build_runner (^2.4.5): Automatiza la generación de código en tiempo de compilación.
-
flutter_test: Proporciona herramientas para escribir y ejecutar pruebas en proyectos Flutter.
Si deseas contribuir a este proyecto, sigue estos pasos:
- Haz un fork del repositorio.
- Crea una nueva rama (
git checkout -b feature/nueva-funcionalidad
). - Realiza tus cambios y haz commit (
git commit -am 'Agregando nueva funcionalidad'
). - Haz push a la rama (
git push origin feature/nueva-funcionalidad
). - Crea un Pull Request.
Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.