Projectero

Creator • Mobile app
My role

Creator

Product Design

User Experience

Interaction

My team

Me

Tools

Figma

Notion

XCode

Cursor

Description

A native iOS task manager designed with intuitive interactions and streamlined tools for a seamless, focused experience.

Context

As a product designer diving deeper into iOS development, I built Projectero to bridge the gap between design thinking and hands-on app creation. Task management apps are everywhere, but most feel bloated or inflexible, especially for users who just want something clean, native, and focused.

Projectero became my opportunity to build a lightweight task manager from the ground up, tailored to real workflows and powered by native Apple technologies like SwiftUI and iCloud.

Challenge

The goal wasn’t just to build another task app—it was to build one that felt like it actually belonged on iOS. That meant designing for simplicity without sacrificing flexibility, and syncing seamlessly across devices without requiring user accounts or external logins.

The real challenge came from making iCloud syncing stable across environments. What seemed like a straightforward feature quickly became a complex, unpredictable technical hurdle, one that tested not just my development skills, but my ability to debug, adapt, and stay focused on the user experience throughout.

Constraints

Solo development: Every aspect of the app - from UI to backend - was designed, coded, and tested independently.

SwiftUI limitations: As a newer framework, SwiftUI has quirks that required creative workarounds to achieve smooth interactions.

CloudKit instability: iCloud syncing introduced platform-dependent edge cases that were hard to reproduce, document, and solve without formal infrastructure support.

No user accounts: By intentionally skipping login flows, I had to lean entirely on device-level and iCloud-based sync solutions.

Research
App usage data

Even before launch, informal testing with users highlighted key needs:A clean UI that focuses on tasks, not featuresIntuitive interactions like quick-add and long-press to organize projectsA frustration with other apps requiring login or showing adsThis feedback validated the decision to keep the interface minimal and account-free.

Development Observations

Working hands-on with SwiftUI and iCloud surfaced countless micro-interactions and technical decisions that directly shaped the design. Each implementation challenge became a user insight, guiding how to better structure flows, error states, and syncing logic.

Key user stories

As a user, I want to add and edit tasks quickly, without navigating through menus.

As a user, I want my tasks to sync across devices without setting up an account.

As a user, I want a lightweight app that doesn’t distract me from the work itself

Iterations

Each feature in Projectero was built incrementally, tested through real usage, and reworked when it didn’t feel right.

I simplified task input, adjusted hierarchy to prioritize action over structure, and refined the task editor over multiple versions. Syncing logic went through several refactors, informed by trial-and-error testing across devices and operating systems.

Early feedback

Initial testers appreciated how quickly they could get started without logging in or configuring anything.
• Users liked the responsive UI and said it felt “native and fast.”
• The lack of distractions was seen as a benefit, not a limitation.
• Several noted they’d “use this just because it doesn’t ask me to create an account.”

Follow-Up Feedback & Data

After launching on the App Store, feedback remained consistent:
• Users appreciated the speed and simplicity of the interface.
• Feature requests focused more on syncing reliability than added functionality.
• The iCloud issues, while frustrating, helped prioritize improvements for the next phase.

Takeaways

Designing and building are inseparable when you're solo.
Every design decision was tested immediately in code, and often reworked.

Simplicity is hard. It took several rounds to strip the app down to only what mattered.

Syncing is a feature. And it needs to be treated like one, from error handling to transparency