Skip to content

CodeCircuitApp/CodeCircuit-iOS

Repository files navigation

CodeCircuit iOS App

An app for browsing all kinds of tech related events. Data is fetched from a remote HTTP server and cached in device's local storage. In case of a network error, an alert is dispatched and cached data is displayed. The event list implements endless scrolling. Events can also be browsed using a map. Tapping on an event marker on the map redirects to the event view.

Image Caching

A custom view called CachedView has been implemented, along with a CachedImageManager and ImageCache singleton. Every downloaded image is cached in Foundation's NSCache collection. ImageCache has a maximum count limit of 100 and maximum total size limit of 50MB.

Saving to calendar

Every event can be saved to calendar using EKEventEditViewController(). Upon clicking Save button, a event edit view controller is presented modally, allowing users to save an event to a calendar of their choice. Created event contains related information such as description, location and website URL.

Browsing with a map

In addition to browsing through a list, users can browse using a map. In the TabView there's a Map tab, upon clicking a MapView is displayed, with initial MapCameraPosition set to outzoomed center of Poland. On the map, events are represented with SwiftUI's Annotation(), with content set to a star icon and name label. Events can be filtered, using the same modal view as in the explore tab. Tapping on an annotation navigates to the selected event screen.

Screenshots

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages