Compleat is a user-friendly task management app that simplifies your daily to-do list. With an intuitive interface and powerful features, Compleat helps you prioritize your work efficiently. You can easily manage your workload with Compleat, whether you need to prioritize tasks, set reminders, or track your progress. I built Compleat using technologies like UserNotifications, UIKit, and data serialization with plist files to offer a seamless and efficient experience.

Problem Solved

Compleat is a task management iOS app that aims to solve the problem of individuals struggling to keep track of their daily tasks and improving their productivity. Many people find it challenging to manage their tasks effectively, leading to missed deadlines and unfinished projects. Compleat solves this problem by providing a simple and clean interface that allows users to quickly add tasks, set deadlines, and mark tasks as completed.

One of the primary features of Compleat is its UserNotifications, which allows users to receive reminders when tasks are due or need to be completed. This feature helps users stay on top of their tasks and improves their chances of meeting deadlines.


The success of any app is highly dependent on the technologies used to build it. In this section, I'll outline the various technologies I employed in the development of my iOS app, which includes tools and frameworks that helped create a robust, user-friendly, and efficient platform. From designing the interface to implementing data persistence and scheduling reminders, I'll walk you through the key technologies that were instrumental in bringing my app to life.

Compleat is built using the following technologies

  • Utilized UIKit to create an engaging and user-friendly interface, ensuring a seamless and enjoyable experience for users.

  • Leveraged the power of User Notifications to schedule and send timely reminders and notifications to keep users on track and focused on their tasks.

  • Implemented Data Persistence through serialization of user data to Plist files, allowing users to access and retrieve their data across multiple app launches.

  • Utilized UserDefaults to remember the user's last open list, enabling them to quickly pick up where they left off and resume their workflow with ease.


Compleat offers a range of features designed to help users efficiently manage their tasks and increase productivity. From intuitive task creation and management to customizable reminders and notifications, our app is packed with tools to help you stay on top of your work. Here's a closer look at some of the key features of Compleat.

  • Seamlessly manage your daily tasks with intuitive task creation and management features.

  • Stay on top of your tasks with customizable reminders and notifications that fit your schedule and preferences.

  • Prioritize your work with customized categories and tags, allowing you to efficiently organize and manage your tasks based on their importance and urgency.

  • Track your progress and accomplishments with the ability to mark tasks as complete, providing a sense of satisfaction and motivation to keep going.

  • Experience a smooth and user-friendly interface with seamless animations and transitions, ensuring a seamless and enjoyable experience.


In developing the app, I faced several challenges in creating an intuitive application, implementing data persistence, handling edge cases, enabling reminders and notifications, and providing flexible sorting and filtering options for tasks. Despite these challenges, we were able to create a functional and user-friendly app that addresses the needs of our target audience. Here are some of the key aspects of our design and development process.

  • Creating a user-friendly interface for task management that balances simplicity and functionality.

  • Developing a data persistence solution to store tasks reliably and efficiently, ensuring a seamless experience across multiple app launches.

  • Addressing edge cases such as incomplete or missing task data to maintain data integrity and prevent user frustration.

  • Implementing reminders and notifications to help users stay on top of upcoming tasks and deadlines.

  • Enabling flexible sorting and filtering options for tasks based on various criteria, allowing users to prioritize and manage their tasks effectively.

Skills Gained

In the process of developing Compleat, I gained a variety of valuable skills in iOS development. These skills extend beyond just building a todo list app and are essential for any iOS developer. In this section, I'll outline the skills I gained, including user interface design, data persistence, notifications and reminders, handling user input, and app navigation. Each of these skills is crucial for creating user-friendly and effective apps, and I gained practical experience applying them throughout the development of Compleat.

  • User Interface Design: Crafting an interface that is both visually appealing and easy to use, enabling users to interact with their tasks and lists seamlessly.

  • Data Persistence: Implementing various techniques to store task data on the device, such as Core Data, plist files, and other storage technologies, to ensure data is available across multiple app sessions.

  • Notifications and Reminders: Setting up local notifications and reminders, helping users stay on track with upcoming tasks and deadlines.

  • Handling User Input: Capturing user input accurately and reliably, as well as handling errors and edge cases that may occur.

  • App Navigation: Creating a clear and user-friendly navigation structure, allowing users to move smoothly between task lists and individual tasks.

These skills are highly transferable and valuable for any iOS developer. Whether working on a todo list app or any other type of project, these skills can help create a polished and user-friendly experience for the end-user.


Main Screen

UI Design

My goal was to create a visual identity that embodies the brand's values and message of "simplicity and intuitiveness".

To achieve this, I conducted extensive research and analysis to identify key design elements that would facilitate a seamless and intuitive user experience for our audience.

Throughout the design process, I closely consulted with Apple's Human Interface Guidelines to ensure that my design adhered to industry standards and best practices, resulting in a user-centered design that aligned with the brand's philosophy.

Refining our design choices based on user testing and feedback, I crafted a sleek and user-friendly interface that met the needs and preferences of my target audience, further reinforcing my brands values.

  • Adopted a minimalist and lightweight aesthetic to maintain simplicity.

  • Closely consulted Apple's Human Interface Guidelines to ensure the design adhered to industry standards and best practices.

  • Tailored the design to support iOS platform exclusively, optimizing for seamless integration and maximum usability.

  • The final design reflects our intention to create a straightforward utility application that empowers users to efficiently manage their tasks.

Drop me a message
Let's share ideas & discuss ways to collaborate!