NegocioListo Logo

NegocioListo

Gestión empresarial completa para emprendedores
Offline-First • Sincronización en la nube • Portal del Cliente

Offline-First

Sincronización

Seguro

Rápido

Stack Tecnológico

Tecnologías modernas y probadas que potencian NegocioListo

💡 Nota: Haz clic en cada categoría para ver todas las tecnologías utilizadas. Cada una tiene un propósito específico en la arquitectura de la aplicación.

Frontend & UI

Jetpack Compose

1.5.10UI moderna declarativa - Construye la interfaz con código, sin XML

Material Design 3

LatestSistema de diseño moderno - Guías visuales de Google

+2 más...

Backend & Datos

Room Database

2.6.1Base de datos local SQLite - Almacena datos en el dispositivo

Firebase Firestore

32.7.0Base de datos en la nube - Sincroniza datos entre dispositivos

+4 más...

Arquitectura & DI

Hilt

2.51Inyección de dependencias - Gestiona automáticamente las dependencias del código

Clean Architecture

CustomSeparación de capas - Organiza el código en capas independientes

+3 más...

Utilidades

Kotlin Coroutines

1.7.3Programación asíncrona - Ejecuta tareas sin bloquear la UI

Kotlinx DateTime

0.5.0Manejo moderno de fechas - Trabaja con fechas de forma segura

+2 más...

Versiones Principales

Kotlin

1.9.22

Compose BOM

2024.10.00

Hilt

2.51

Room

2.6.1

Firebase BOM

32.7.0

Min SDK

24 (Android 7.0)

Target SDK

34 (Android 14)

DataStore

1.1.1

Arquitectura

Clean Architecture + MVVM para un código mantenible y escalable

💡 Explicación: La aplicación está organizada en 3 capas principales. Cada capa tiene una responsabilidad específica, lo que facilita el mantenimiento y las pruebas. Haz clic en cada capa para ver sus componentes.

Presentation Layer

Jetpack Compose + ViewModels - La capa que el usuario ve e interactúa

Domain Layer

Use Cases + Business Models - La lógica de negocio pura

Data Layer

Repositories + Data Sources - Acceso a datos locales y remotos

Patrones de Diseño Implementados

MVVM

Model-View-ViewModel - Separa la interfaz (View) de la lógica (ViewModel) y los datos (Model). Facilita el testing y mantenimiento.

Repository Pattern

Abstracción de fuentes de datos - Unifica el acceso a datos locales (Room) y remotos (Firebase) en una sola interfaz.

Use Cases

Lógica de negocio pura - Cada funcionalidad tiene su caso de uso independiente, fácil de probar y reutilizar.

Dependency Injection

Hilt gestiona dependencias - En lugar de crear objetos manualmente, Hilt los inyecta automáticamente donde se necesitan.

Offline-First

Funciona sin conexión - La app prioriza datos locales para respuesta instantánea, luego sincroniza con la nube en segundo plano.

Single Source of Truth

Room como fuente única local - Todos los datos locales provienen de Room, evitando inconsistencias.

Sistema de Diseño Unificado

Componentes Unificados

  • UnifiedButtons
  • UnifiedCards
  • UnifiedTopAppBar

Design Tokens

  • Colores
  • Tipografía
  • Espaciado

Gradientes Corporativos

  • #009FE3
  • #312783

Modo Oscuro

  • Soporte completo
  • Transiciones suaves

Características Principales

Funcionalidades completas para gestionar tu negocio de manera integral

💡 Nota: Haz clic en cada módulo para ver todas sus funcionalidades. El Portal del Cliente es nuestra funcionalidad principal (Core Feature).

Gestión de Inventario

6 funcionalidades

Sistema de Ventas

6 funcionalidades

Gestión de Clientes

6 funcionalidades

Control de Gastos

6 funcionalidades

Sistema de Facturación

6 funcionalidades

CORE FEATURE

Portal del Cliente

8 funcionalidades

Portal del Cliente - Core Feature

Canal de comunicación profesional directo sin intermediarios ni grandes equipos. Ahorro de tiempo y dinero con automatización completa.

5 Templates Visuales

MODERN, CLASSIC, MINIMAL, DARK, COLORFUL

Chat en Tiempo Real

Comunicación bidireccional cliente-negocio

Notificaciones Push

Alertas FCM en tiempo real

Links Públicos

Compartir por WhatsApp, email o SMS

¿Cómo Funciona?

Flujo de datos y arquitectura interna de NegocioListo

💡 Explicación: Cuando el usuario realiza una acción, los datos fluyen a través de las capas de la aplicación. Cada paso tiene una responsabilidad específica, garantizando que la app funcione de forma eficiente y confiable.

Usuario Interactúa

El usuario realiza una acción en la UI (Compose)

ViewModel Procesa

El ViewModel ejecuta Use Cases y actualiza el estado

Use Case Valida

La lógica de negocio valida y procesa la operación

Repository Gestiona

El Repository guarda localmente (Room) y sincroniza (Firebase)

Sincronización

WorkManager sincroniza en background cuando hay conexión

Ejemplos de Código Destacados

💡

¿Qué hace este código?

El ViewModel gestiona el estado de la pantalla de forma reactiva. Usa StateFlow para que la UI se actualice automáticamente cuando cambian los datos. Hilt inyecta los Use Cases necesarios. Cuando el usuario abre la pantalla de productos, el ViewModel automáticamente carga los datos usando el Use Case. Si hay un error, se muestra en la UI sin bloquear la aplicación. El estado se actualiza en tiempo real, por lo que si otro usuario agrega un producto, la lista se refresca automáticamente.

@HiltViewModel
class ProductViewModel @Inject constructor(
    private val getProductsUseCase: GetProductsUseCase,
    private val addProductUseCase: AddProductUseCase
) : ViewModel() {
    
    private val _uiState = MutableStateFlow(ProductUiState())
    val uiState: StateFlow<ProductUiState> = _uiState.asStateFlow()
    
    init {
        loadProducts()
    }
    
    private fun loadProducts() {
        viewModelScope.launch {
            getProductsUseCase()
                .catch { _uiState.update { it.copy(error = it.message) } }
                .collect { products ->
                    _uiState.update { it.copy(products = products) }
                }
        }
    }
}

Offline-First

Funciona completamente sin conexión. Los datos se sincronizan automáticamente cuando hay internet.

Clean Architecture

Separación clara de capas permite mantener el código limpio, testeable y escalable.

State Management

StateFlow y Compose State para una gestión reactiva y eficiente del estado de la aplicación.