Skip to content

Discover and explore TV shows and movies across various categories with Movie Magic. Get detailed overviews and descriptions about movie/tv shows.

Notifications You must be signed in to change notification settings

OranLevi/MovieMagic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MovieMagic

MovieMagic is an iOS app built using SwiftUI, Combine, and MVVM architecture that allows users to explore movies and access information about them using the MovieDB API. This README file provides an overview of the project and guides you through the setup process.

Features

  • Browse popular,upcoming,trending,top rated movies.
  • Search for movies by title or keyword.
  • Users can filter movies to discover movies within specific categories.
  • View detailed information about movies/tvshow, including overview, rating.

Screenshots

[Screenshots1] , [Screenshots2] , [Screenshots3]

Architecture

MovieMagic follows the MVVM (Model-View-ViewModel) architectural pattern. Here's a brief explanation of the different components:

Model: Contains the data models used in the app.
View: Defines the user interface components and their layout using SwiftUI.
ViewModel: Acts as an intermediary between the View and Model, providing data and handling user interactions. It also abstracts the API calls and data processing logic using Combine.
Service: Handles network requests to the MovieDB API and provides data to the ViewModel.

Folder Structure

The project is organized as follows:

Models: Contains the data models used in the app.
Views: Contains the SwiftUI view files.
ViewModels: Contains the ViewModel files.
Services: Contains the networking code to interact with the MovieDB API.
Utilities: Contains utility classes.
Extensions: Contains Swift extensions that add extra functionality to existing classes or types.

Getting Started

To get started with MovieMagic, follow the instructions below:

  1. Clone the repository:
git clone https://github.com/OranLevi/MovieMagic.git
  1. Open the MovieMagic.xcodeproj file in Xcode.

  2. Obtain an API key from The MovieDB and replace the placeholder value in ConstantsTemplate.swift file:

static var API_KEY = ""

Build and run the app in the Xcode simulator or on a physical device.

Contact

Contributions are always welcome! If you have any ideas for features, bug fixes, or other improvements, please submit a pull request.

About

Discover and explore TV shows and movies across various categories with Movie Magic. Get detailed overviews and descriptions about movie/tv shows.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages