ThasianX / ElegantTimeline-SwiftUI

Elegant demonstration of a multi-faceted timeline view with interactions between the calendar, list, and app theme.
MIT License
869 stars 51 forks source link
elegantcalendar eleganttimeline swiftui swiftui-animations swiftui-components swiftui-demo swiftui-example swiftui-learning timelineview timepage

ElegantTimeline

ElegantTimeline is a SwiftUI demonstration of a multi-faceted timline view with interactions between the calendar, list, and app theme.

If you are a developer or designer, this repository is meant for you. Down below, I've listed all the features this demonstration app includes so you can learn more about a feature you're interested in implementing yourself.

ALSO, please do this repository justice and run it on an actual device. It will look so much more elegant with the bezels and rounded corners and run smoother as the simulator isn't suited for hardcore renders like deez. The app is compatible and looks good on any iPhone but for best experience, run it on an iPhone X or above. The list snaps to the nearest cell based on the top notch bezel. How cool is that.

Requirements

Introduction

ElegantTimeline is inspired by TimePage and is part of a larger repository of elegant demonstrations like this: TimePage Clone. It uses ElegantColorPalette(theme picker), ElegantPages and ElegantCalendar, libraries I wrote specifically for this demonstration. Specifically, check out ElegantColorPalette as it is UIKit and SwiftUI compatible!

Also, make sure to check out TimePrints, an app that I'm working on that'll utilize this UI for visits tracking. Funny thing is, I've been so busy developing the components that eventually be implemented inside my app that I haven't actually worked much on my app in the past month.

Features

The screenshots below link to embedded youtube videos demonstrating the feature even further

Startup Theme Picker

What you can learn:

Relevant code:

Paging + Theme Change

What you can learn:

Relevant code:

SideBar that tracks current month and year + Visits slideshow list + Weeks/Months ago popup

What you can learn:

Relevant code:

Monthly Calendar and list interaction

What you can learn:

Relevant code:

Yearly Calendar and list interaction

What you can learn:

Relevant code:

Fast Scrolling

What you can learn:

Relevant code:

Scrolling back to today

What you can learn:

Relevant code:

Header and footer quote

What you can learn:

Relevant code:

Resources

Also, here's a dump of resources I found useful when working on this

License

This project is licensed under the MIT License - see the LICENSE file for details