SwipeClean GHV: Fotos es un producto iOS que he disenado, desarrollado y publicado para resolver una tarea concreta: revisar una fototeca grande sin convertir el borrado en una apuesta. SwiftUI presenta cada foto o video como una tarjeta y el usuario decide con gestos; PhotoKit mantiene el borrado dentro de los permisos y confirmaciones de iOS. La app anade filtros por tipo, fecha y album, sesiones continuables y sugerencias locales de duplicados, similitud, capturas, videos pesados y posibles fotos borrosas. Todo el analisis y la persistencia se ejecutan en el dispositivo: no hay cuenta, backend, publicidad, tracking ni recopilacion de datos. La version 1.0 ya esta publicada gratis en la App Store.
Problema, stack y resultado
Problema que resuelve
Herramienta de limpieza de fotos y videos basada en decisiones visuales: conserva, omite, protege o envia elementos a una cola de revision antes de pedir a iOS la confirmacion final.
Tecnologias usadas
Stack principal: Swift, SwiftUI, PhotoKit. Tecnologias del proyecto: Swift, SwiftUI, PhotoKit, PhotosUI, Vision, AVFoundation, XCTest, iOS 17+.
Que hice yo
Mi rol fue Disenador y Desarrollador unico. Trabaje la parte tecnica, el enfoque de producto y la documentacion suficiente para que el resultado pueda explicarse y evolucionar.
Resultado o aprendizaje
Version 1.0 publicada gratis en la App Store tras superar la revision de Apple. Flujo de cuatro decisiones: conservar, enviar a revision, omitir o proteger.
Producto en uso




Highlights
- Version 1.0 publicada gratis en la App Store tras superar la revision de Apple.
- Flujo de cuatro decisiones: conservar, enviar a revision, omitir o proteger.
- Ningun gesto borra contenido: cola de revision y confirmacion posterior del sistema mediante PhotoKit.
- Filtros por fotos, videos, mes, ano y album, con sesiones que se pueden continuar mas tarde.
- Sugerencias locales de duplicados, fotos similares, capturas, videos pesados y posibles fotos borrosas.
- Procesamiento on-device con PhotoKit, PhotosUI, Vision y AVFoundation.
- Persistencia local de decisiones, sesiones y preferencias serializadas en JSON.
- Privacidad por diseno: sin cuenta, backend, anuncios, tracking ni recopilacion de datos.
