basirsharif / Cronica

Cronica will help you find and be reminded of upcoming movies and TV shows.

Home Page:https://alexandremadeira.dev/cronica

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cronica

Cronica Icon

Cronica is an app to remind you about your new movies, and tv shows.

Twitter: @_alexMadeira GitHub license MIT badge

Cronica Home view Screenshot

About

Cronica is built using Swift and SwiftUI, it uses Core Data to persist the user's watchlist, and CloudKit to sync the list effortlessly between the user's device.

To provide release notifications, the app takes advantage of local notifications to notify users about new episodes or a movie release. To keep notifications useful, there's a background task that updates item values with new information using TMDb API, if needed.

Thanks to CloudKit and SwiftUI, Cronica also can run on every Apple device, and the information will automatically sync.

Project Organization

If you want to contribute with code, here are some important details about the project's organization:

  • The code-base for the Mac, iPhone, iPad, and Apple TV versions is shared and resides within the "Shared" folder.
  • While the Apple Watch also utilizes the same networking as the other platforms, it has a different user interface (UI) design. The Apple Watch-specific UI components are located in the "Apple Watch" folder. However, certain UI components are shared among all platforms and can be found in the "Shared" folder.
  • The views are organized based on their relationship with models or functionality. For instance, the "ItemContent" struct represents data fetched from the TMDb service, which can refer to a movie or a TV show. The UI elements associated with this struct are grouped under the "ItemContent" group in the "Views" folder. An example of such a UI element is the details page that users see when they open a movie.
  • If you have any questions, feel free to reach out to me via email, Twitter, or iMessage. I'll be happy to assist you.

Build information

This project targets iOS 16.4, iPadOS 16.4, watchOS 9.4, macOS 13.4, tvOS 16.4 and requires Xcode 15.

To get started you'll need to:

  1. Get an API key to use TMDb API, you can get yours at their website, after that, go to Shared/Configuration/Key and replace the value of tmdbApi with your own key.
  2. You can remove TelemetryDeck service if you want to, I use it for the Feedback feature and sending signal when a catch occurs.

App Store

iOS/iPadOS

Cronica running on iPad displaying the details page for the TV Show Kaguya-sama: Love Is War.

Badge for download Cronica on App Store

Apple Watch

Cronica running on Apple Watch S7.

Badge for download Cronica on Apple Watch App Store

Mac

Cronica running on MacBook Air displaying details for Top Gun: Maverick.

Badge for download Cronica on Mac App Store

Apple TV

Cronica running on Apple TV displaying details for Top Gun: Maverick.

Badge for download Cronica on Apple TV App Store

QR Code

App Store QR Code

TestFlight

You can also download the latest beta from TestFlight

Contact

If you any question, you can send me an email at contact@alexandremadeira.dev, I'll try to answer as quick as I can.
I'm also availabe at iMessage, you can send a message at the same email address above.
Follow me on Twitter: _alexMadeira.

About

Cronica will help you find and be reminded of upcoming movies and TV shows.

https://alexandremadeira.dev/cronica

License:MIT License


Languages

Language:Swift 100.0%