TypeNote iOS
Proyectos
(04/11)
Mobile Native & Cloud
Descripción & Contexto
App de notas minimalista para iOS, con arquitectura MVVM y sincronización serverless en AWS.
Quería un espacio de notas en iOS que se sintiera elegante y simple. Me enfoqué en que la interfaz fluyera con SwiftUI y en que la sincronización fuera confiable, montando todo serverless para no depender de un servidor propio.
Características Clave
-
Autenticación Segura
Registro e inicio de sesión integrados directamente a través de flujos de identidad en la nube.
-
Operaciones CRUD de Notas
Creación, edición, listado y eliminación física de registros de texto.
-
Categorización Personalizada
Organización visual rápida asignando colores y categorías dinámicas a las notas.
-
Sincronización Offline/Online
Sincronización transparente de las notas para mantenerlas actualizadas al recuperar la red.
Galería de Capturas
Arquitectura del Sistema
Implementé una arquitectura reactiva MVVM (Model-View-ViewModel) en Swift 5.9 y SwiftUI:
* Model: Estructuras inmutables que representan las entidades de notas, metadatos y esquemas GraphQL generados por AWS Amplify.
* ViewModel (@Observable / ObservableObject): Gestiona el estado de la interfaz, la validación de campos, la lógica de categorización y el despacho de operaciones asíncronas con async/await.
* View (SwiftUI): Vistas declarativas desacopladas de la persistencia que reaccionan inmediatamente a los cambios de estado.
* Cloud Layer (AWS Amplify): Capa de sincronización que conecta directamente con AWS Cognito para la identidad y AWS DynamoDB para el almacenamiento NoSQL serverless de baja latencia.
Retos Técnicos & Soluciones
* Integración Reactiva con AWS Amplify: Mapear los flujos asíncronos del SDK de Amplify dentro del ciclo de vida declarativo de SwiftUI manteniendo la fluidez a 60 FPS sin bloqueos en el hilo principal.
* Persistencia Temporal y Manejo de Conexión: Diseñar un buffer de estado en memoria para que el usuario pueda escribir de forma continua aunque la conexión sufra fluctuaciones, sincronizando con DynamoDB en segundo plano.
Stack Tecnológico
- Swift
- SwiftUI
- AWS
- DynamoDB
Ficha Técnica
- Rol
- Arquitectura, Diseño y Desarrollo
- Tipo
- Mobile Native & Cloud
- Impacto & Resultados
- * Tiempos de respuesta y sincronización cloud inferiores a 180 ms. * Consumo de memoria óptimo por debajo de 45 MB gracias al uso eficiente de estructuras livianas en Swift. * Arquitectura 100% serverless con costo operativo nulo bajo la capa gratuita de AWS.
- Aprendizajes
- TypeNote demostró cómo una arquitectura MVVM limpia combinada con servicios serverless permite construir aplicaciones nativas de alta gama para iOS con mantenibilidad total y sin sobrecarga de infraestructura. <div