SWIFT MASTERY
This comprehensive program equipped me with the necessary skills and knowledge to tackle more advanced projects in the iOS ecosystem. With a deep understanding of the fundamental concepts, syntax, and best practices, I could develop robust and efficient iOS applications, as the ones completed on the units.
The curriculum encompasses various topics, including advanced UI design, networking, database integration, and leveraging external frameworks. Additionally, I learned how to implement complex features like authentication, push notifications, and data persistenceāarmed with the expertise acquired from this program.
Movie Platform
The Scavenger Hunt App is a dynamic and interactive mobile application designed to enhance the traditional scavenger hunt experience. With a focus on user engagement and location-based gamification, this project combines the power of PHPicker for photo selection, MapKit for map integration, and additional features for an unforgettable user experience.
-
It provides you with up-to-date information about currently playing movies, all thanks to the integration of The Movie DB (TMDB) API, fetching data about movies currently showing in theaters.
-
It was added UITabBarController to enhance the movie-viewing experience. This allows you to explore movies through multiple view controllers, making navigation and discovery easy.
-
For this simulator, it can be access additional information about the movie, just as you would in a traditional table view.
-
The commitment to making the platform as āyour ultimate movie companionā doesn't stop at just the basics.To step further, it lets you discover similar movies. By adding a button within the movie detail view, you can seamlessly browse through related films. This feature is powered by the TMDB API endpoint: https://api.themoviedb.org/3/movie/MOVIE_ID/similar?api_key=YOUR_API_KEY_HERE.
Fictional Character Profile
The project showcases the ability to create a user-friendly mobile app with responsive design, navigation between view controllers, and a clear presentation of profile information for a fictional character. It offers a combination of basic and optional features to enhance the user experience and visual aesthetics.
-
The app's user interface is designed using AutoLayout constraints, ensuring that it works seamlessly on any screen size and orientation. This guarantees a consistent and visually appealing user experience across various devices.
-
A data model object named "ContextItem" is created to store this information, making it easy to manage and display the character's details.
-
Users can tap on each context item to navigate to a Detail View using a UINavigationController. The Detail View provides more in-depth information about the selected context item, including a title, subtitle, and a detailed description.
-
If the context items in the Profile Overview extend beyond the visible screen area, a UITableView is implemented to enable scrolling. This ensures that all context items are accessible to the user.
Photo Scavenger Hunt
The app offers users a sleek and organized task list interface, providing a quick overview of outstanding scavenger hunt challenges. Task data models are used to display tasks with essential information, such as titles and descriptions. Completed tasks are visually distinguished, ensuring users can easily track their progress in the hunt.
-
The app offers a sleek task list interface for scavenger hunt challenges. It displays essential information for each task, including titles and descriptions, and highlights completed tasks for easy tracking of progress.
-
Users can dive into the details of each task by tapping on it. This brings up the Task Detail screen, where they can access essential information about the challenge. The Task Detail screen also allows users to attach photos to the task, making their achievements more tangible and memorable. Once a photo is attached, the task is marked as completed, and a distinct visual indicator signifies its status.
-
One of the standout features of this app is its use of MapKit to integrate maps into the scavenger hunt experience. Completed tasks are plotted on the map, offering a visual representation of where users successfully completed challenges. Users can see their progress, retrace their steps, and explore the geographic aspect of the hunt through the interactive map.
-
The app uses PHPicker to make photo-attachment user-friendly. It verifies selected photos contain location metadata for map accuracy. Users can grant full access to their photo library for a seamless experience.
-
As a bonus feature, users can choose to open their device's camera to capture new photos instead of selecting from the photo library. The UIImagePickerController class is utilized for this purpose, providing a dynamic way to complete tasks and create a more immersive scavenger hunt experience.
-
The app maintains compliance with privacy requirements by displaying the NSCameraUsageDescription key in the app's Info.plist file. This ensures that users are requested to grant camera usage permissions when accessing the camera feature.
BeReal Clone
This project is the first part of a two-part project that aims to replicate some of the main functionalities of the popular app called BeReal. The goal is to create a mobile app that allows users to post photos of their current activities after receiving random notifications. Users can only view their friends' photos after posting their own. The project involves integrating the Parse server for authentication, creating and fetching photo data, and using the photo library API for image uploads.
-
With ParseSwift, users can effortlessly create new accounts, securely store their login details and conveniently log out whenever they want.
-
Users can upload photos from their camera or photo library, add captions, and view them on their feed. The date and time of the photo upload are visible to other users.
-
Users can view the 10 most recent photos by pulling down to refresh. Past photos can be accessed through infinite-scrolling.
-
If the time of a post's creation is more than 24 hours after the logged-in user's last post, a blurred photo will be displayed instead of the actual photo.