Skip to content

Your one-stop for exploring & discovering your favourite anime shows/movies. Built on SwiftUI.

Notifications You must be signed in to change notification settings

quangmng/Anivise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anivise

anime.visualise

Your one-stop for exploring & discovering your favourite anime shows/movies

Technology Stack:

Static Badge Static Badge Static Badge Static Badge Static Badge

  • Swift/SwiftUI
  • Google Firebase

Prerequisites (for development/testing purposes):

  • Google Firebase (Firebase Auth & Firebase Firestore) - Add link to project dependencies if missing:
https://github.com/firebase/firebase-ios-sdk.git
  • Sign in with Google iOS module - Add link to project dependencies if missing:
https://github.com/google/GoogleSignIn-iOS.git
  • GoogleService-Info.plist: required to test Firebase functions, place it in project's root folder. (in Anivise folder)
    (Note for Advanced iOS Development course: This file will be attached in Canvas Assignment .zip submission. Not available in Github repo for security reasons.)

What is Anivise?

Anivise - anime.visualise

Embark on the world of anime tailored to your tastes with Anivise. Swipe through personalised recommendations, discover new genres, and save your favourites to watch later. Set your preferences, dive into detailed anime info, and sync across devices with seamless cloud support. Whether you're a seasoned Otaku or just getting into anime, Anivise transforms your experience in search of your next binge-worthy anime!

Main Features

  • Discover: Explore a world of anime tailored to your preferences!
    Adding genres to your pallete to let the great taste flows through your entertainment needs!
  • Track: Keep track of your favourite Anime shows and movies.
    Viewing your saved items at one location couldn't be any easier.
  • Recommend: Receive recommendations based on your taste!
    Craving for more of your favourites? Fear not, they are right at your fingertips!

App Screenshots!

IMG_9574 IMG_9573 IMG_9572 IMG_9575 IMG_9578

For Advanced iOS Assignment Reference Only

Error handling:

  • Genre Selection:
    Issue: User selected genres, but some might not be saved properly
    Solution: Adding debug print-to-console messages that checks which genres user saved to favourites and cross-compare with the output.
  • Signing in/Authentication:
    Issue(s): User may mistype email, password or attempt to login multiple times quickly -> failed login attempts
    Solution: Provide alert message with detailed errors of which type of sign in errors it was (e.g.:mistyped email, passwords, blank fields, brute forcing).
  • Cloud Syncing:
    Issue: User has not favourited any genres (selecting "skip for now") during Onboarding flow & syncing to cloud when signed in. Blank genre -> empty record in Firestore -> could cause genreList corruption.
    Solution: Provide alert message that user has not favourited a genre for cloud saving.

Instructions:

  • Complete the onboarding process & select genres
  • Save changes for genre selection view & browse through Home. Tap into each anime to show detailed info.
  • Visit the Discover page to look for more Anime. Tap into each anime to show detailed info.
  • Sign in through the "Preferences" tab using either Sign in with Google (requires GoogleService-Info.plist file and Google account) or using the following credentials if not working:
 email: [email protected]
 pass: JaneDoe1
  • Backup and restore genres through the available options after Login.

About

Your one-stop for exploring & discovering your favourite anime shows/movies. Built on SwiftUI.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages