diff --git a/AnimeGen.xcodeproj/project.pbxproj b/AnimeGen.xcodeproj/project.pbxproj index 2c72ed10..83e1d342 100644 --- a/AnimeGen.xcodeproj/project.pbxproj +++ b/AnimeGen.xcodeproj/project.pbxproj @@ -23,10 +23,12 @@ 1393C3AA2BEBC94300704137 /* Dev-History.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1393C3A72BEBC94300704137 /* Dev-History.swift */; }; 1393C3AB2BEBC94300704137 /* moe-kyoko.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1393C3A82BEBC94300704137 /* moe-kyoko.swift */; }; 13A8496B2BF479DA009A9442 /* n-sfw.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A8496A2BF479DA009A9442 /* n-sfw.swift */; }; + 13A8496E2BF4F0E7009A9442 /* FrameWorksCredits.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A8496D2BF4F0E7009A9442 /* FrameWorksCredits.swift */; }; + 13A849702BF4F118009A9442 /* Contributor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A8496F2BF4F118009A9442 /* Contributor.swift */; }; 13AB1D2A2BE93E3D009132CB /* Historyy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13AB1D292BE93E3D009132CB /* Historyy.swift */; }; 13AC382C2BEFA34A00676546 /* APIsValid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13AC382B2BEFA34A00676546 /* APIsValid.swift */; }; 13C1E03C2BE9068600A27DEE /* AboutPage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13C1E03B2BE9068600A27DEE /* AboutPage.swift */; }; - 13C1E03E2BE9183400A27DEE /* API.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13C1E03D2BE9183400A27DEE /* API.xcassets */; }; + 13C1E03E2BE9183400A27DEE /* Credits-Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13C1E03D2BE9183400A27DEE /* Credits-Images.xcassets */; }; 13C1E0402BE92BB300A27DEE /* APIsCredits.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13C1E03F2BE92BB300A27DEE /* APIsCredits.swift */; }; 13D4FBE02BE7661A00BC3D1C /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 13D4FBDF2BE7661A00BC3D1C /* Main.storyboard */; }; 13D4FBE62BE7689500BC3D1C /* Tags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13D4FBE52BE7689400BC3D1C /* Tags.swift */; }; @@ -77,10 +79,12 @@ 1393C3A72BEBC94300704137 /* Dev-History.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Dev-History.swift"; sourceTree = ""; }; 1393C3A82BEBC94300704137 /* moe-kyoko.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "moe-kyoko.swift"; sourceTree = ""; }; 13A8496A2BF479DA009A9442 /* n-sfw.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "n-sfw.swift"; sourceTree = ""; }; + 13A8496D2BF4F0E7009A9442 /* FrameWorksCredits.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FrameWorksCredits.swift; sourceTree = ""; }; + 13A8496F2BF4F118009A9442 /* Contributor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Contributor.swift; sourceTree = ""; }; 13AB1D292BE93E3D009132CB /* Historyy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Historyy.swift; sourceTree = ""; }; 13AC382B2BEFA34A00676546 /* APIsValid.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIsValid.swift; sourceTree = ""; }; 13C1E03B2BE9068600A27DEE /* AboutPage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AboutPage.swift; sourceTree = ""; }; - 13C1E03D2BE9183400A27DEE /* API.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = API.xcassets; sourceTree = ""; }; + 13C1E03D2BE9183400A27DEE /* Credits-Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Credits-Images.xcassets"; sourceTree = ""; }; 13C1E03F2BE92BB300A27DEE /* APIsCredits.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIsCredits.swift; sourceTree = ""; }; 13D4FBDF2BE7661A00BC3D1C /* Main.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = ""; }; 13D4FBE52BE7689400BC3D1C /* Tags.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tags.swift; sourceTree = ""; }; @@ -170,14 +174,23 @@ path = History; sourceTree = ""; }; - 13C1E03A2BE9067700A27DEE /* About-Credits */ = { + 13A8496C2BF4F0B8009A9442 /* Credits */ = { isa = PBXGroup; children = ( - 13C1E03D2BE9183400A27DEE /* API.xcassets */, - 13C1E03B2BE9068600A27DEE /* AboutPage.swift */, + 13C1E03D2BE9183400A27DEE /* Credits-Images.xcassets */, 13C1E03F2BE92BB300A27DEE /* APIsCredits.swift */, + 13A8496D2BF4F0E7009A9442 /* FrameWorksCredits.swift */, + 13A8496F2BF4F118009A9442 /* Contributor.swift */, + ); + path = Credits; + sourceTree = ""; + }; + 13C1E03A2BE9067700A27DEE /* About */ = { + isa = PBXGroup; + children = ( + 13C1E03B2BE9068600A27DEE /* AboutPage.swift */, ); - path = "About-Credits"; + path = About; sourceTree = ""; }; 13D4FBE12BE7683D00BC3D1C /* APIs Requests */ = { @@ -235,8 +248,9 @@ 13D4FC352BE780BE00BC3D1C /* Settings */ = { isa = PBXGroup; children = ( + 13A8496C2BF4F0B8009A9442 /* Credits */, 13DD19DB2BEA64590034B014 /* Developer */, - 13C1E03A2BE9067700A27DEE /* About-Credits */, + 13C1E03A2BE9067700A27DEE /* About */, 136BD7E32BE7DFEE00ED23AE /* AppPref.swift */, 13D4FC362BE780C900BC3D1C /* FeaturesApp.swift */, 136BD7E52BE7E1B300ED23AE /* Contents.swift */, @@ -332,7 +346,7 @@ buildActionMask = 2147483647; files = ( 13D4FC2F2BE779A200BC3D1C /* LaunchScreen.storyboard in Resources */, - 13C1E03E2BE9183400A27DEE /* API.xcassets in Resources */, + 13C1E03E2BE9183400A27DEE /* Credits-Images.xcassets in Resources */, 133C4C902BE67CAD00258EDD /* Assets.xcassets in Resources */, 136BD7E22BE7CCC400ED23AE /* PrivacyInfo.xcprivacy in Resources */, 13D4FBE02BE7661A00BC3D1C /* Main.storyboard in Resources */, @@ -347,6 +361,7 @@ buildActionMask = 2147483647; files = ( 13DD19DA2BEA58B00034B014 /* SettingsMain.swift in Sources */, + 13A849702BF4F118009A9442 /* Contributor.swift in Sources */, 13D4FBF42BE76FC000BC3D1C /* Activity.swift in Sources */, 13D4FC2D2BE7719700BC3D1C /* Secrets.swift in Sources */, 1393C3AB2BEBC94300704137 /* moe-kyoko.swift in Sources */, @@ -363,6 +378,7 @@ 136BD7DE2BE7CAA300ED23AE /* HistoryButton.swift in Sources */, 13DD19DD2BEA64620034B014 /* waifu-it-pref.swift in Sources */, 13D4FC202BE770EC00BC3D1C /* waifu-pics.swift in Sources */, + 13A8496E2BF4F0E7009A9442 /* FrameWorksCredits.swift in Sources */, 13D4FBF82BE7706D00BC3D1C /* Refresh-API-Button.swift in Sources */, 13D4FC1E2BE770EC00BC3D1C /* waifu-im.swift in Sources */, 13D4FC1D2BE770EC00BC3D1C /* waifu-it.swift in Sources */, diff --git a/AnimeGen.xcodeproj/project.xcworkspace/xcuserdata/Francesco.xcuserdatad/UserInterfaceState.xcuserstate b/AnimeGen.xcodeproj/project.xcworkspace/xcuserdata/Francesco.xcuserdatad/UserInterfaceState.xcuserstate index dee0fdc1..9d1f1fdb 100644 Binary files a/AnimeGen.xcodeproj/project.xcworkspace/xcuserdata/Francesco.xcuserdatad/UserInterfaceState.xcuserstate and b/AnimeGen.xcodeproj/project.xcworkspace/xcuserdata/Francesco.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/AnimeGen/Main.storyboard b/AnimeGen/Main.storyboard index 2ef8ce3e..4003a0f2 100644 --- a/AnimeGen/Main.storyboard +++ b/AnimeGen/Main.storyboard @@ -1402,7 +1402,7 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. - + @@ -1439,7 +1439,7 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. - + @@ -1865,7 +1865,7 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. - + @@ -1906,6 +1906,9 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. + + + @@ -1948,6 +1951,11 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. + + + + + @@ -2417,7 +2425,7 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. - + @@ -2458,6 +2466,9 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. + + + @@ -2499,6 +2510,11 @@ along with AnimeGen. If not, see <http://www.gnu.org/licenses/>. + + + + + diff --git a/AnimeGen/Settings/.DS_Store b/AnimeGen/Settings/.DS_Store index 2ffdd6cf..41c35a91 100644 Binary files a/AnimeGen/Settings/.DS_Store and b/AnimeGen/Settings/.DS_Store differ diff --git a/AnimeGen/Settings/About-Credits/AboutPage.swift b/AnimeGen/Settings/About/AboutPage.swift similarity index 100% rename from AnimeGen/Settings/About-Credits/AboutPage.swift rename to AnimeGen/Settings/About/AboutPage.swift diff --git a/AnimeGen/Settings/About-Credits/APIsCredits.swift b/AnimeGen/Settings/Credits/APIsCredits.swift similarity index 92% rename from AnimeGen/Settings/About-Credits/APIsCredits.swift rename to AnimeGen/Settings/Credits/APIsCredits.swift index b30dd712..100abadd 100644 --- a/AnimeGen/Settings/About-Credits/APIsCredits.swift +++ b/AnimeGen/Settings/Credits/APIsCredits.swift @@ -22,7 +22,6 @@ class APIsCredits: UITableViewController { let kyoko = "https://api.rei.my.id/docs/ANIME/WAIFU-Generator/" let purrbot = "https://purrbot.site/" let nsfw = "https://github.com/SDWebImage/SDWebImage" - let SDweb = "https://github.com/SDWebImage/SDWebImage" override func viewDidLoad() { super.viewDidLoad() @@ -81,10 +80,5 @@ class APIsCredits: UITableViewController { @IBAction func nsfwa(_ sender: UITapGestureRecognizer) { openURL(nsfw) } - - @IBAction func SDweb(_ sender: UITapGestureRecognizer) { - openURL(SDweb) - } - } diff --git a/AnimeGen/Settings/Credits/Contributor.swift b/AnimeGen/Settings/Credits/Contributor.swift new file mode 100644 index 00000000..dc8f6245 --- /dev/null +++ b/AnimeGen/Settings/Credits/Contributor.swift @@ -0,0 +1,28 @@ +// +// Contributor.swift +// AnimeGen +// +// Created by cranci on 15/05/24. +// + +import UIKit + +class ContributorsCredits: UITableViewController { + + // URLs + let Max = "https://github.com/MaximilianGT500" + + override func viewDidLoad() { + super.viewDidLoad() + } + + func openURL(_ urlString: String) { + if let url = URL(string: urlString) { + UIApplication.shared.open(url) + } + } + + @IBAction func Max(_ sender: UITapGestureRecognizer) { + openURL(Max) + } +} diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/Hmtai.imageset/0754DB9D-0AAA-4AB2-8F94-D34DBBF58ADF.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Hmtai.imageset/0754DB9D-0AAA-4AB2-8F94-D34DBBF58ADF.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/Hmtai.imageset/0754DB9D-0AAA-4AB2-8F94-D34DBBF58ADF.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Hmtai.imageset/0754DB9D-0AAA-4AB2-8F94-D34DBBF58ADF.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/Hmtai.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Hmtai.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/Hmtai.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Hmtai.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/NekoBot.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/NekoBot.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/NekoBot.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/NekoBot.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/NekoBot.imageset/apple-touch-icon-removebg-preview.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/NekoBot.imageset/apple-touch-icon-removebg-preview.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/NekoBot.imageset/apple-touch-icon-removebg-preview.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/NekoBot.imageset/apple-touch-icon-removebg-preview.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/Purr.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Purr.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/Purr.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Purr.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/Purr.imageset/avatar.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Purr.imageset/avatar.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/Purr.imageset/avatar.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/Purr.imageset/avatar.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/kyoko.imageset/68747470733a2f2f692e6962622e636f2f737979315036672f6b796f6b6f2e77656270.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/kyoko.imageset/68747470733a2f2f692e6962622e636f2f737979315036672f6b796f6b6f2e77656270.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/kyoko.imageset/68747470733a2f2f692e6962622e636f2f737979315036672f6b796f6b6f2e77656270.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/kyoko.imageset/68747470733a2f2f692e6962622e636f2f737979315036672f6b796f6b6f2e77656270.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/kyoko.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/kyoko.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/kyoko.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/kyoko.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/n-sfw.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/n-sfw.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/n-sfw.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/n-sfw.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/n-sfw.imageset/default-firstframe.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/n-sfw.imageset/default-firstframe.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/n-sfw.imageset/default-firstframe.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/n-sfw.imageset/default-firstframe.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.best.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.best.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.best.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.best.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.best.imageset/favicon.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.best.imageset/favicon.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.best.imageset/favicon.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.best.imageset/favicon.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.moe.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.moe.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.moe.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.moe.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.moe.imageset/apple-touch-icon.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.moe.imageset/apple-touch-icon.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekos.moe.imageset/apple-touch-icon.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekos.moe.imageset/apple-touch-icon.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekosapi.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekosapi.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekosapi.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekosapi.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/nekosapi.imageset/logo-removebg-preview.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekosapi.imageset/logo-removebg-preview.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/nekosapi.imageset/logo-removebg-preview.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/nekosapi.imageset/logo-removebg-preview.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/pic-re.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/pic-re.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/pic-re.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/pic-re.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/pic-re.imageset/download.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/pic-re.imageset/download.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/pic-re.imageset/download.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/pic-re.imageset/download.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.im.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.im.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.im.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.im.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.im.imageset/favicon.ico.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.im.imageset/favicon.ico.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.im.imageset/favicon.ico.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.im.imageset/favicon.ico.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.it.imageset/79479798.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.it.imageset/79479798.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.it.imageset/79479798.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.it.imageset/79479798.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.it.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.it.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.it.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.it.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.pics.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.pics.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.pics.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.pics.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.pics.imageset/favicon-1-_dragged_.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.pics.imageset/favicon-1-_dragged_.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/apis/waifu.pics.imageset/favicon-1-_dragged_.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/apis/waifu.pics.imageset/favicon-1-_dragged_.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/contributors/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/contributors/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/contributors/Max.imageset/49883584.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Max.imageset/49883584.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/contributors/Max.imageset/49883584.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Max.imageset/49883584.png diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/contributors/Max.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Max.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/contributors/Max.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/contributors/Max.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/frameworks/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/frameworks/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/frameworks/SD.imageset/Contents.json b/AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/SD.imageset/Contents.json similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/frameworks/SD.imageset/Contents.json rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/SD.imageset/Contents.json diff --git a/AnimeGen/Settings/About-Credits/API.xcassets/frameworks/SD.imageset/SDWebImage_logo_small.png b/AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/SD.imageset/SDWebImage_logo_small.png similarity index 100% rename from AnimeGen/Settings/About-Credits/API.xcassets/frameworks/SD.imageset/SDWebImage_logo_small.png rename to AnimeGen/Settings/Credits/Credits-Images.xcassets/frameworks/SD.imageset/SDWebImage_logo_small.png diff --git a/AnimeGen/Settings/Credits/FrameWorksCredits.swift b/AnimeGen/Settings/Credits/FrameWorksCredits.swift new file mode 100644 index 00000000..53dde943 --- /dev/null +++ b/AnimeGen/Settings/Credits/FrameWorksCredits.swift @@ -0,0 +1,29 @@ +// +// FrameWorksCredits.swift +// AnimeGen +// +// Created by cranci on 15/05/24. +// + +import UIKit + +class FrameWorksCredits: UITableViewController { + + // URLs + let SDweb = "https://github.com/SDWebImage/SDWebImage" + + override func viewDidLoad() { + super.viewDidLoad() + } + + func openURL(_ urlString: String) { + if let url = URL(string: urlString) { + UIApplication.shared.open(url) + } + } + + @IBAction func SDweb(_ sender: UITapGestureRecognizer) { + openURL(SDweb) + } + +} diff --git a/Images/screenshots/apis.png b/Images/screenshots/apis.png index 6531c1ee..3270523d 100644 Binary files a/Images/screenshots/apis.png and b/Images/screenshots/apis.png differ diff --git a/README.md b/README.md index be55c16e..b3547f40 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,25 @@ # AnimeGen -AnimeGen is a mobile app made in Swift, developed using public APIs. The app's purpose is to save, generate, and share images. +AnimeGen is a mobile app developed in Swift that allows users to save, generate, and share anime images. It utilizes various public APIs to fetch the images and is designed for anime enthusiasts who want to discover and share new anime images. + +## Table of Contents + +- [Compatibility](#compatibility) +- [Screenshots](#screenshots) +- [Download](#download) +- [APIs](#apis) + - [Working APIs](#working-apis) +- [Third Party Software](#third-party-software) +- [Acknowledgements](#acknowledgements) +- [Build](#build) +- [License](#license) ## Compatibility -AnimeGen is designed to seamlessly operate on any iOS/iPadOS device with a minimum operating system version of **iOS 13** or above. +AnimeGen is designed to work smoothly on any device running iOS or iPadOS. The minimum required operating system version is **iOS 13**. This includes iPhones, iPads, and iPod touch devices that are capable of running these versions. + +Please note that while AnimeGen should function on all compatible devices, the user experience may vary depending on the specific device model and its performance capabilities. ## Screenshots @@ -30,17 +44,16 @@ AnimeGen is designed to seamlessly operate on any iOS/iPadOS device with a minim ## Download -Here, you can access the IPA file for installation via TrollStore, AltStore, or Sideloadly. Alternatively, you can install the app via TestFlight - -> [!Note] -> The nightly-IPA may be unstable and also does not support the Hmtai API. (also does testflight) +You can download the IPA file for installation via TrollStore, AltStore, or Sideloadly. Alternatively, you can install the app via TestFlight. Please note that the nightly-IPA may be unstable. The stable-IPA is recommended for most users. - [Testflight beta](https://testflight.apple.com/join/Qx5saHll) -- [Download stable-IPA](https://github.com/cranci1/AnimeGen/releases/download/v1.5/AnimeGen.ipa) +- [Download stable-IPA](https://github.com/cranci1/AnimeGen/releases/download/v1.7/AnimeGen.ipa) - [Download nightly-IPA](https://nightly.link/cranci1/AnimeGen/workflows/build/main/AnimeGen-IPA.zip) ## APIs +Thanks to all the Developer that are providing this apis for public use. + ### Working APIs | APIs | Type | Format | Status | @@ -49,7 +62,7 @@ Here, you can access the IPA file for installation via TrollStore, AltStore, or | [waifu.im](https://docs.waifu.im/) | SFW/NSFW | IMG | ✅ | | [nekos.best](https://docs.nekos.best/) | SFW | IMG | ✅ | | [waifu.pics](https://waifu.pics/docs) | SFW/NSFW | IMG/GIF | ✅ | -| [Hmtai](https://hmtai.hatsunia.cfd/endpoints) | SFW/NSFW | IMG/GIF | ⚠️ | +| [Hmtai](https://hmtai.hatsunia.cfd/endpoints) | SFW/NSFW | IMG/GIF | ⚠️ | | [Nekos api](https://nekosapi.com/docs) | SFW/NSFW | IMG | ✅ | | [Nekos.moe](https://docs.nekos.moe) | SFW/NSFW | IMG | ✅ | | [Kyoko](https://api.rei.my.id/docs/ANIME/WAIFU-Generator/) | SFW/NSFW | IMG/GIF | :x: | @@ -63,50 +76,47 @@ Here, you can access the IPA file for installation via TrollStore, AltStore, or ## Third Party Software -- [SDWebImage](https://github.com/SDWebImage/SDWebImage) (Handles .gif images for the gallery) +- [SDWebImage](https://github.com/SDWebImage/SDWebImage): This software is used to handle .gif images for the gallery in the app. -## Help +## Acknowledgements -- [NineAnimator](https://github.com/SuperMarcus/NineAnimator) (Launch screen idea and base) -- [Nekidev](https://github.com/Nekidev/anime-api) (Anime-api list) +- [NineAnimator](https://github.com/SuperMarcus/NineAnimator): Inspired the launch screen idea and provided a base for the app launch screen. +- [Nekidev](https://github.com/Nekidev/anime-api): Provided the anime-api list used in the app. ## Build -Want to build the app yourself? No problem, by cloning this repo and running the `ipadbuild.sh` file, you can build your own IPA of the app! You can also modify the app as you like! - -> [!IMPORTANT] -> You need to have Xcode installed! - -Clone the repo: +If you want to build the app yourself, follow these steps: -``` -git clone https://github.com/cranci1/AnimeGen -``` +1. Ensure you have Xcode installed on your machine. -Navige to the directory: +2. Clone the repo: -```bash -cd AnimeGen -``` + ``` + git clone https://github.com/cranci1/AnimeGen + ``` -You need to update the Secrets.swift file with your specific values: the Discord Bot Token, a Discord webhook, and your Discord channel ID: +3. Navigate to the directory: + ```bash + cd AnimeGen + ``` -```swift -import Foundation +> Note: This can also be modified directly from the app in the developer section! +3-1. Update the `Secrets.swift` file with your specific values: the Discord Bot Token, a Discord webhook, and your Discord channel ID: + ```swift + import Foundation -struct Secrets { + struct Secrets { static let apiToken = "Bot TokenHEREHEREHERE" // Replace TokenHEREHEREHERE with the token of the discord bot. DONT REMOVE "Bot" - static let discordWebhookURL = URL(string: "YourWebhookUrl")! - static let discordChannelId = "YourChannelIdHere" -} -``` + } + ``` -Run the script: +5. Run the script: + ``` + ./ipabuild.sh + ``` -``` -./ipabuild.sh -``` +If the build was successful, you should see a "build" folder with a subfolder "DerivedDataApp" and the AnimeGen.ipa file in the AnimeGen/build directory. You can now use any IPA installer like TrollStore, AlStore, Scarlet, ESign or sideloadly to install the IPA on the desired device. -If the build was successful, you should see a "build" folder with a subfolder "DerivedDataApp" and the AnimeGen.ipa file in the AnimeGen/build directory. You are now done! Just use any IPA installer like TrollStore, AlStore, Scarlet, ESign or sideloadly to install the IPA on the desired device. +> Note: If you encounter any issues during the build, please create an issue I will try my best to help! \ No newline at end of file