Inspiration

We take photos, save dates, and collect memories, but it’s hard to see how those moments connect over time. We wanted a place to record the milestones and everyday experiences that shape a life, then look back and see the story they tell together. That idea became Oneline: a lifeline on a timeline.

What it does

Oneline is a personal life events on timeline for iPhone and iPad. Oneline manage all your life events, journeys; stories that you created by collecting events.

Events Record milestones, trips, goals, and everyday moments with a title, subtitle, start date, end date, category, place, notes and checklists that you want to remember. Explore events chronologically, filter them, and see how different parts of life connect.

Journeys Bring selected events together into a story. Choose a layout, customize its appearance, and share the result with others.

Places Explore your memories on Apple Maps. Country markers show which countries you recently visited, while your visited-country progress grows with your timeline.

How we built it

Oneline is a native iOS app built with SwiftUI. SwiftData stores events, journeys, and places locally, so people can start building their timeline without an account. Optional iCloud sync keeps their data available across their Apple devices.

Events are the foundation of the app. Journeys bring selected events into customizable layouts that can be shared as visual stories. The Places view uses MapKit to show country markers based on the places attached to events and track visited-country progress.

We also built a WidgetKit widget for quick access to events and use RevenueCat to manage Pro purchases and subscriptions.

Challenges we ran into

The biggest challenge was making a personal timeline feel simple while supporting different kinds of life events. We had to work through date rules, filtering, and scrolling so that finding a moment feels natural, even as the timeline grows.

Data across the app brought its own challenges. Events can appear in multiple Journeys and also determine which countries appear in Places. We worked to keep those views consistent as events are edited or deleted. Adding optional iCloud sync and a widget made data sharing more complex because the app still needs to work well with sync turned off.

We also spent time refining Journey exports and testing purchases. An export that looked correct on screen could render blank when shared, while sandbox purchase behavior did not always match what we expected during testing.

Accomplishments that we're proud of

We’re proud that Oneline brings three ways of seeing a life into one app: a timeline of meaningful events, Journeys that turn those events into shareable stories, and a map of the countries connected to them. Seeing a single event become part of a larger story was the moment the idea came together. We’re also proud of making Oneline useful from the first event, with local storage, optional iCloud sync, and a widget that keeps memories close.

What we learned

Oneline was our first project using SwiftData and implementing iCloud sync. We learned how much care a data model needs when events are shared across features and changes must stay consistent across devices. We also explored how the experience could adapt to the iPad, which helped us think beyond the iPhone layout as we designed the timeline, Journeys, and Places.

How we make money

Oneline is free to start, so anyone can build a personal timeline. For people who want more ways to customize and share their story, Oneline Pro offers features such as Journey exports and timeline backgrounds for now. Pro is available through a yearly subscription or a one-time lifetime purchase, with purchases managed through RevenueCat.

What's next for Oneline

We have plenty of ideas in the pipeline, and these are the ones we’re most excited to build:

  • Animated timeline backgrounds to timelines.
  • Digital Passport the feature we’re most excited about, to make exploring the places in your life even more personal.
  • Linked events to connect related moments, such as birthdays and anniversaries.
  • Cover photos for Events and Journeys.
  • Insights to help you discover patterns across your timeline.

Built With

  • icloud
  • revenuecat
  • storekit2
  • swiftdata
  • swiftui
Share this project:

Updates

Submission history