SKIES Mobile
A modern iOS application for team connectivity and content sharing, built with SwiftUI and iOS 18 features.
About the App
SKIES Mobile is a client-side iOS application that connects you to your organization’s data through Microsoft APIs. The app is designed with privacy-first principles and operates without storing user data on external servers.
Requirements: iOS 18.0+
- Some features require iOS 26+ (e.g., AI summaries due to Foundation framework).
Built with: Swift 6.1.2 & SwiftUI
Known Issues & Planned Features
Current issues (top priority)
- Interactions & content
- Unable to like posts, comments, or activities - missing/undocumented API endpoints; inspect web client traces and Mobile API.
- Comments are likely not loading for activities correctly - Using posts endpoint instead of activities probably will have to check. Same in case of adding comments.
- Events & calendar
- Events sometimes show as ongoing after end - API lacks finish timestamps for all events currently finish data is hardcoded around ~4 hours from start.
- Localization & UX
- Some List dropdown menus are not scaled with Dynamic Type - custom menu implementation needed.
- Some languages not fully translated - localization file should be released separately and schedule a localization check after v1.0.
Planned features
- UI / UX (easy)
- Improve image viewer (zoom + sharing) - SwiftUI viewer + share sheet.
- Calendar export (iCal/ICS) has flaky behavior - revisit EventKit prototype and test edge cases (recurrence, timezones).
- Offline / search / caching (medium)
- Improved offline caching (ActivityDetails; selective comments) - extend CacheStore and define TTL.
- In-app search (offline + online) - prototype local index and fallback to API search.
- [IN WORK] iCloud sync (CloudKit) - sync user state (read/unread), small caches, and preferences across devices.
- Integration / system (medium)
- Safari extension to suggest opening SKIES Mobile for matching URLs - small extension prototype.
- Widget / Live Activity support - decide content and implement a simple read-only widget first.
- Mark items as read/unread is not yet implemented - implement local state (iCloud sync optional).
- Backend-dependent / larger
- Add / Edit posts and activities - requires API write endpoints and permission checks.
- Waitlist support for activities - backend dependent.
- [IN WORK] Rich notifications with images/actions - typically requires server-side push payloads and attachments.
Privacy
SKIES Mobile is built with privacy by design. We collect only essential data for core functionality:
What We Collect
- Authentication data - Your Microsoft account information for sign-in (stored locally)
- Content you create - Posts, comments, and activities you share (with your organization)
- Technical data - Diagnostic logs stored locally on your device only (stored locally)
What We Don’t Do
- We don’t store your data on external servers
- We don’t build advertising profiles
- We don’t sell your information
- We don’t track you across other apps or websites
All data is either stored locally on your device or accessed directly from your organization’s Microsoft services. We act as a secure bridge between you and your organization’s data.