- Swift 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| Rodamon | ||
| Rodamon.xcodeproj | ||
| RodamonGiny | ||
| RodamonRellotge Watch App | ||
| RodamonTests | ||
| RodamonUITests | ||
| .gitignore | ||
| BUG-FUS-HORARI.md | ||
| LICENSE | ||
| README.md | ||
Rodamón
App iOS de planificació de viatges, íntegrament en català.
Organitza un viatge dia a dia: cada jornada té les seves parades en ordre, amb hora, estona prevista i el temps de desplaçament d'una a l'altra calculat amb MapKit. Els llocs es busquen amb la mateixa cerca que fa servir Mapes, es trien per categoria o es posen tocant el mapa. Cada viatge pot tenir la seva imatge.
Els viatges se sincronitzen entre els teus dispositius amb iCloud, i se'n pot convidar altra gent amb permís d'edició o de només lectura. Quan algú canvia un viatge compartit, arriba un avís al telèfon. No hi ha cap servidor a mantenir ni cap compte d'usuari: l'autenticació és l'Apple ID del dispositiu.
Què fa
Itinerari — Un viatge és un rang de dates i els dies se'n deriven sols. Dins de cada dia, les parades van en ordre i es poden reordenar; entre cada dues hi ha el temps i la distància del tram, calculats segons com hi arribes: a peu, en cotxe, en taxi o trasllat, en transport públic, en avió o en ferri. L'app avisa si dues parades se solapen.
Llocs — Cerca per text, per categoria (allotjament, menjar, visita, natura, aeroport, estació, pàrquing, lloguer de cotxes, compres) o tocant un mapa a pantalla sencera, que posa nom al punt tot sol.
Mapa — La ruta del dia i la del viatge sencer, amb les parades numerades. Les rutes reals es dibuixen senceres; els trams sense traçat (avió, ferri, transport públic) van a guions.
Compartir — Convida qui viatgi amb tu des de la pantalla del sistema, amb permís d'edició o de només lectura. A cada parada s'hi veu qui l'ha afegida.
Configuració — Tema (sistema, fosc o clar), avisos de canvis, i un registre de diagnòstic que es pot compartir quan alguna cosa no rutlla.
Estat
Nucli v1 funcional. La compartició no s'ha pogut provar de punta a punta: necessita dos comptes d'iCloud en dos dispositius. Al simulador s'ha verificat que l'app arrenca amb els dos magatzems muntats i que sense sessió d'iCloud avisa en català en comptes de petar.
Requisits
- iOS 26.4 o superior (només iPhone)
- Xcode 27
- Un compte d'iCloud al dispositiu per sincronitzar i compartir (sense compte, l'app funciona en local)
No hi ha dependències externes: tot és Cocoa (SwiftUI, Core Data, CloudKit, MapKit, CoreLocation, PhotosUI, UserNotifications).
El contenidor d'iCloud és iCloud.cat.spla.rodamon. Abans de publicar cal promoure l'esquema
de CloudKit a producció des del Dashboard.
Compilar i provar
export DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer
xcodebuild -project Rodamon.xcodeproj -scheme Rodamon \
-destination 'generic/platform=iOS Simulator' build
xcodebuild test -project Rodamon.xcodeproj -scheme Rodamon \
-destination 'platform=iOS Simulator,name=iPhone 17 Pro'
La bateria sencera triga uns cinc minuts i mig. Els tests d'interfície no s'executen en paral·lel (ho fixa l'esquema compartit): amb quatre simuladors clonats competint per la CPU, les navegacions es passaven de temps i queien tests diferents a cada execució.
Alguns tests necessiten xarxa, perquè van contra MapKit de debò: la cerca de llocs, la cerca per categoria i el nom del punt triat al mapa.
Arguments de llançament
Només en compilacions de depuració:
-dadesDeMostra— sembra un viatge d'exemple a Catània amb parades reals.-magatzemEnMemoria— no toca el disc ni iCloud; el fan servir els tests.-senseIntro— salta la pantalla de presentació.
Llicència
GNU AGPL v3. Vegeu LICENSE.