{"id":26212347,"url":"https://github.com/hackinggate/myanimelist-applemultiplatform","last_synced_at":"2025-03-12T08:30:05.671Z","repository":{"id":43329707,"uuid":"181184723","full_name":"HackingGate/MyAnimeList-AppleMultiplatform","owner":"HackingGate","description":"Unofficial MyAnimeList app for Apple TV, iPhone, iPad and Mac rewritten in SwiftUI (previous was TVML/TVJS) (never tries to publish to App Store due to potential copyright issue)","archived":false,"fork":false,"pushed_at":"2024-01-07T13:36:00.000Z","size":20310,"stargazers_count":21,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-04-17T00:56:31.067Z","etag":null,"topics":["apple-tv","appletv","crunchyroll","ios","ios-app","ipad","ipados-app","macos","myanimelist","swift","swiftui","tvos","tvos-app"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HackingGate.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-13T14:41:36.000Z","updated_at":"2024-02-18T03:02:54.000Z","dependencies_parsed_at":"2023-12-18T14:33:41.556Z","dependency_job_id":"2806cf67-2450-459c-83b9-2833efa00e6c","html_url":"https://github.com/HackingGate/MyAnimeList-AppleMultiplatform","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackingGate%2FMyAnimeList-AppleMultiplatform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackingGate%2FMyAnimeList-AppleMultiplatform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackingGate%2FMyAnimeList-AppleMultiplatform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackingGate%2FMyAnimeList-AppleMultiplatform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HackingGate","download_url":"https://codeload.github.com/HackingGate/MyAnimeList-AppleMultiplatform/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243184001,"owners_count":20249899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-tv","appletv","crunchyroll","ios","ios-app","ipad","ipados-app","macos","myanimelist","swift","swiftui","tvos","tvos-app"],"created_at":"2025-03-12T08:30:04.935Z","updated_at":"2025-03-12T08:30:05.599Z","avatar_url":"https://github.com/HackingGate.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MyAnimeList-AppleMultiplatform\n[![SwiftLint](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/actions/workflows/swiftlint.yml/badge.svg)](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/actions/workflows/swiftlint.yml)\n[![Test](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/actions/workflows/test.yml/badge.svg)](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/actions/workflows/test.yml)\n\nUnofficial MyAnimeList app for Apple TV, iPhone, iPad and Mac rewritten in SwiftUI (previous was TVML/TVJS)\n\n### Requirements\n\n- Xcode 13\n- tvOS 15 or iOS 15 or macOS 12\n\n### Dependencies\n\n- [SwiftUIFlux](https://github.com/Dimillian/SwiftUIFlux): A very naive implementation of Redux using Combine BindableObject to serve as an example\n- [JikanSwift](https://github.com/HackingGate/JikanSwift): \nJikan Swift wrapper\n- [MALSyncSwift](https://github.com/HackingGate/MALSyncSwift): MALSync Api Swift wrapper\n- [CrunchyrollSwift](https://github.com/HackingGate/CrunchyrollSwift): Crunchyroll Swift wrapper unofficial\n- [Kingfisher](https://github.com/onevcat/Kingfisher): A lightweight, pure-Swift library for downloading and caching images from the web.\n\n### Development\n\nThe project use SwiftUI and SwiftUIFlux.\n\nYou can learn SwiftUIFlux and SwiftUI with [MovieSwiftUI](https://github.com/Dimillian/MovieSwiftUI).\n\nSwift packages made for this porject are intergrated as git submodules. Once the sub packages are well developed. I'll consider to change it back to the way to install a SwiftPM that everybody know.\n\nExample to clone with submodules:\n\n```sh\n$ git clone --recurse-submodules\n```\n\nExample to install submodules if you didn't use above command:\n\n```sh\n$ git submodule update --init --recursive\n```\n\n### Screenshots\n\n![TV_Home](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/raw/main/Screenshots/TV_Home.webp)\n![TV_Detail](https://github.com/HackingGate/MyAnimeList-AppleMultiplatform/raw/main/Screenshots/TV_Detail.webp)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackinggate%2Fmyanimelist-applemultiplatform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhackinggate%2Fmyanimelist-applemultiplatform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackinggate%2Fmyanimelist-applemultiplatform/lists"}