A modern, open-source To-Do list app built entirely in SwiftUI for iPhone and iPad. Featuring SwiftData with iCloud sync, iOS 26 Liquid Glass design, and Swift 6 strict concurrency.
Note
This is a complete rewrite of the original ToDoList — from UIKit/Storyboards/Realm to a modern SwiftUI stack with zero third-party dependencies.
- SwiftData persistence with CloudKit sync across devices
- iOS 26 Liquid Glass design language throughout
- Add, edit, complete, and delete tasks
- Task descriptions
- Set due date & time with graphical date picker
- Date-only tasks (no specific time) or date + time
- Task priorities (Highest, High, Normal, Low)
- Comments on tasks (text and images via PhotosPicker)
- Reminders with local push notifications
- Configurable automatic reminders (None / 10min / 30min / 1h before due)
- Sort tasks by date, priority, or manual drag & drop reordering
- Search across all task lists
- Filter views: Inbox, Today, Upcoming, Completed
- Upcoming tasks grouped by day sections
- iPad support with adaptive
TabViewnavigation - 7 color themes
- 3-page onboarding with notification permission flow
- Localization support (English, Romanian)
- Settings: start page, theme, auto-reminders, feedback email
- Soft-delete pattern for CloudKit compatibility
- Context menus on task rows (Edit, Complete, Delete)
- Widgets (Today and Upcoming in all size classes)
- Smart date parsing — type "Buy groceries tomorrow at 10am" and the date is auto-detected
- Full VoiceOver and accessibility support
- Zero third-party dependencies
- iOS 26.0+
- Xcode 26+
- Swift 6.0
- Clone the repo
- Open
ToDoList.xcodeprojin Xcode - In Signing & Capabilities:
- Set your development team and bundle identifier
- Enable iCloud with CloudKit using your own CloudKit container
- Enable App Groups with your own app group identifier
- Enable Push Notifications
- Build and run on a simulator or device
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
ToDoList is available under the GNU license. See the LICENSE file for more info.
