Web y app móvil en un solo paquete: el caso de Skymar
Para Skymar Lojistik me encargué de todo: la web, la app para iOS y Android, el backend y la publicación en las tiendas. ¿Qué hay que tener en cuenta en un proyecto completo?

Una empresa de logística suele montar su parte digital por piezas: un equipo hace la web, años después la app móvil se encarga a otro equipo y la conexión de datos entre ambas se intenta resolver más tarde. Con nuestro cliente Skymar Lojistik seguimos otro camino: desarrollé yo mismo la web corporativa, la app para clientes de iOS y Android, el backend de la app y la publicación en las tiendas. Soy Berke Özyaşar; en este artículo explico, con el caso de Skymar, por qué funciona este enfoque y en qué me fijo en un proyecto de paquete completo.
Las piezas del paquete
- Web: www.skymar.com.tr, en turco e inglés. Páginas de transporte marítimo, aéreo, por carretera y ferroviario y de almacenaje, formulario de presupuesto que envía la solicitud por correo, calculadora de CBM, guía de Incoterms 2023, formulario de empleo con subida de CV y noticias. Funciona con ASP.NET Web Forms sobre IIS.
- App móvil: una única base de código para iOS y Android con React Native 0.78.
- Backend: Node.js y Express, Prisma y SQL Server; Socket.IO para el chat en tiempo real y Firebase Cloud Messaging para las notificaciones.
- Pantallas para el personal y de gestión: envío de notificaciones, seguimiento de usuarios y registros de actividad, ajustes de la app.
- Publicación en las tiendas: Google Play y App Store, en las cuentas propias de Skymar.
Por qué un solo equipo
La web y la app son dos caras de la misma empresa; el cliente no las ve como productos distintos, sino como la misma empresa. Cuando trabaja un solo equipo aparecen varias ventajas concretas:
- Lenguaje y términos coherentes: FCL o HBL se explican en la app igual que en la web. Los textos en turco e inglés se preparan con las mismas decisiones en ambos lados.
- Un solo interlocutor: si un cambio afecta tanto a la web como a la app, la empresa no tiene que coordinar a dos proveedores distintos.
- Las decisiones del backend se toman desde el principio: a qué datos accede la app y con qué permisos, en qué eventos se envían notificaciones y cómo se presentan los documentos se planifica desde el primer momento.
- Publicación y mantenimiento en un mismo calendario: las actualizaciones en las tiendas, los cambios en el servidor y los contenidos de la web forman parte del mismo plan.
Un backend común
En el centro del paquete está el backend con el que se comunica la app móvil. La app no se conecta directamente a la base de datos; la API que escribí con Node.js y Express se encarga de la autenticación y a cada cliente le devuelve solo sus propios envíos, documentos y facturas. Para el acceso a los datos usé Prisma, y los datos están en SQL Server. Esta capa separa la interfaz de la app de la estructura de los datos: si más adelante se añade una pantalla nueva u otro cliente, puede funcionar sobre la misma API, y los permisos se gestionan desde un único punto.
Qué incluye la app para clientes
Los envíos se dividen en las pestañas Reserva, En tránsito y Llegado; el cliente encuentra la carga que busca por B/L, número de contenedor o su propia referencia. Desde la ficha del envío se accede a los documentos HBL y a las facturas. Las facturas se filtran por estado de pago y por rango de fechas, y se pueden descargar y compartir. En logística, los clientes hacen a menudo dos preguntas: «¿dónde está mi carga?» y «¿cómo está mi factura?». Las pantallas principales de la app se construyeron en torno a esas dos preguntas.
Notificaciones y chat
Con Firebase Cloud Messaging se envían notificaciones instantáneas de llegada del buque, de mensajes nuevos y de facturas. Es importante limitar los eventos que generan notificaciones; el usuario que recibe un aviso por cada pequeño cambio acaba desactivándolos. En el chat, el cliente puede enviar a su representante fotos, documentos y mensajes de voz desde la propia app, y los mensajes llegan en tiempo real gracias a Socket.IO. Tener el chat en la app reúne, junto a la información del envío, las conversaciones que antes se dispersaban entre el correo y el teléfono.
Pantallas para el personal
La app tiene también una parte para el personal. Los usuarios autorizados pueden enviar notificaciones con imagen a todos los clientes o a un solo usuario, seguir los usuarios activos y los registros de actividad, y activar o desactivar las pestañas del menú inferior y los botones de chat. Esta última función puede parecer menor, pero es práctica: cuando se quiere cerrar temporalmente una sección, no hace falta enviar una nueva versión a la tienda.
Publicación en la cuenta del cliente
La app está publicada en Google Play y, desde el 23 de junio de 2026, en App Store, con las cuentas de desarrollador propias de Skymar. Esta elección hace que la app aparezca en la tienda con el nombre de la empresa y que la cuenta se quede en la empresa. Para la publicación preparé también las páginas de política de privacidad, solicitud de eliminación de cuenta y seguridad infantil. Planificar junto con la parte web este tipo de páginas que exige la revisión de las tiendas es otra de las ventajas de trabajar con un solo equipo.
Dos idiomas, dos plataformas
Tanto la web como la app están en turco e inglés. Una única base de código escrita con React Native alimenta a la vez las versiones para iOS y Android; cuando se añade una función, puede publicarse en las dos plataformas al mismo tiempo. Como el backend es común, los clientes de ambas plataformas ven los mismos datos.
Cómo planifico un proyecto de paquete completo
Cuando la web, la app y el backend forman parte del mismo proyecto, el orden de trabajo cobra importancia. Mi enfoque general es este:
- Primero, datos y permisos: no diseño pantallas hasta que está claro qué envíos, documentos y facturas verá el cliente y qué operaciones hará el personal.
- Después, el backend: una vez montadas la API y la infraestructura de notificaciones, la app puede desarrollarse con datos reales.
- Web y app en paralelo: como la web no depende del backend, puede avanzar mientras se desarrolla la app; los términos y los textos se escriben a la vez para ambos lados.
- Preparación de las tiendas desde el principio: las cuentas de desarrollador de la empresa, los textos de privacidad y la cuenta demo para la revisión se preparan al mismo tiempo que el desarrollo; así, cuando la app está lista, la publicación no se retrasa.
Cuándo tiene sentido un solo paquete
- Si la empresa va a renovar su web y también tiene en mente una app móvil
- Si los datos que mostrará la app vienen del sistema actual de la empresa y esa conexión tiene que montarse una sola vez y bien
- Si la empresa no tiene un equipo de software interno que coordine la web, la app y el servidor
Si solo hace falta una web o solo una app, por supuesto las piezas pueden hacerse por separado; el paquete único no es una obligación, sino una opción que reduce la carga de coordinación.
Proyectos similares
Ya había desarrollado antes las apps de Buzmavi y Mitlog para los clientes de empresas de logística; ambas están publicadas en App Store y Google Play con las cuentas propias de las empresas. Skymar llevó esa experiencia a un único paquete, junto con la web, el backend y las pantallas para el personal. En las páginas de desarrollo de apps móviles, para la parte móvil, y de desarrollo de webs corporativas, para la parte web, explico cómo trabajo.