> ## Documentation Index
> Fetch the complete documentation index at: https://wiki.vivla.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Vivla Mobile App

> Documentación técnica de la aplicación móvil de VIVLA

# Vivla Mobile App

Vivla es una aplicación móvil para la gestión de propiedades compartidas (co-ownership). Permite a los copropietarios reservar estancias, comunicarse entre sí, gestionar su perfil y mantenerse informados sobre sus propiedades, todo desde una experiencia nativa en iOS y Android.

## Versión actual

<Note>La versión actual de la app es **2.1.17** (build **191**).</Note>

## Plataformas soportadas

| Plataforma | Versión mínima |
| ---------- | -------------- |
| iOS        | 17.0           |
| Android    | API 34         |

## Stack tecnológico

<CardGroup cols={2}>
  <Card title="React Native 0.81.5" icon="mobile">
    Framework base para desarrollo móvil multiplataforma.
  </Card>

  <Card title="Expo SDK 54" icon="rocket">
    Plataforma de desarrollo y distribución sobre React Native. Builds con iOS 26 SDK / Xcode 26.
  </Card>

  <Card title="Expo Router 6.0" icon="route">
    Enrutamiento basado en archivos (file-based routing) con typed routes.
  </Card>

  <Card title="TypeScript 5.9" icon="code">
    Tipado estático para mayor seguridad y productividad.
  </Card>
</CardGroup>

<Note>La **New Architecture** de React Native está habilitada en este proyecto.</Note>

## Librerías principales

| Librería             | Versión | Propósito                                               |
| -------------------- | ------- | ------------------------------------------------------- |
| Zustand              | 5.0.3   | Estado del cliente                                      |
| TanStack React Query | 5.71.5  | Estado del servidor (fetching, caching, sincronización) |
| Stream Chat Expo     | 8.13.x  | Mensajería en tiempo real                               |
| React Hook Form      | 7.55.0  | Gestión de formularios                                  |
| Zod                  | 3.24.2  | Validación de esquemas                                  |
| i18next              | 24.2.3  | Internacionalización                                    |
| PostHog              | 4.42.x  | Analytics                                               |
| Sentry               | 7.2.x   | Monitoreo de errores                                    |
| Axios                | 1.8.4   | Cliente HTTP                                            |

## Estructura del proyecto

<Tabs>
  <Tab title="Directorios principales">
    ```
    managua/
    ├── app/              # Rutas (Expo Router file-based routing)
    ├── src/
    │   ├── modules/      # Módulos de negocio
    │   ├── shared/       # Código compartido
    │   └── core/         # Configuración central
    ├── assets/           # Recursos estáticos (imágenes, fuentes)
    └── docs/             # Documentación
    ```
  </Tab>

  <Tab title="app/">
    El directorio `app/` contiene las rutas de la aplicación siguiendo la convención de **Expo Router** (file-based routing). Cada archivo o carpeta dentro de `app/` se mapea directamente a una ruta navegable.
  </Tab>

  <Tab title="src/modules/">
    Los módulos de negocio encapsulan la lógica, componentes y servicios de cada dominio funcional:

    | Módulo          | Descripción                       |
    | --------------- | --------------------------------- |
    | `auth`          | Autenticación y gestión de sesión |
    | `booking`       | Reservas de estancias             |
    | `chat`          | Mensajería en tiempo real         |
    | `home`          | Pantalla principal y dashboard    |
    | `invitations`   | Invitaciones a copropietarios     |
    | `notifications` | Notificaciones push y en app      |
    | `profile`       | Perfil de usuario                 |
    | `property`      | Gestión de propiedades            |
    | `stays`         | Estancias y calendario            |
  </Tab>

  <Tab title="src/shared/">
    Código reutilizable compartido entre módulos:

    * **components/** — Componentes UI genéricos
    * **hooks/** — Custom hooks compartidos
    * **stores/** — Stores de Zustand globales
    * **services/** — Servicios HTTP y utilidades de red
    * **contexts/** — React Contexts compartidos
  </Tab>

  <Tab title="src/core/">
    Configuración central de la aplicación:

    * **analytics/** — Integración con PostHog
    * **config/** — Configuración de entorno y constantes
    * **featureFlags/** — Sistema de feature flags
  </Tab>
</Tabs>
