Skip to content

rursache/ToDoList

Repository files navigation

ToDoList

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.

Features

  • 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 TabView navigation
  • 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

Requirements

  • iOS 26.0+
  • Xcode 26+
  • Swift 6.0

How to run

  1. Clone the repo
  2. Open ToDoList.xcodeproj in Xcode
  3. 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
  4. Build and run on a simulator or device

Communication

  • 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.

License

ToDoList is available under the GNU license. See the LICENSE file for more info.

About

A simple ToDoList written in Swift

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages