diff --git a/src/de/anifreakz/AndroidManifest.xml b/src/de/anifreakz/AndroidManifest.xml
deleted file mode 100644
index acb4de356..000000000
--- a/src/de/anifreakz/AndroidManifest.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/src/de/anifreakz/build.gradle b/src/de/anifreakz/build.gradle
deleted file mode 100644
index 31ffbc968..000000000
--- a/src/de/anifreakz/build.gradle
+++ /dev/null
@@ -1,13 +0,0 @@
-apply plugin: 'com.android.application'
-apply plugin: 'kotlin-android'
-apply plugin: 'kotlinx-serialization'
-
-ext {
- extName = 'Anifreakz'
- pkgNameSuffix = 'de.anifreakz'
- extClass = '.Anifreakz'
- extVersionCode = 1
- libVersion = '13'
-}
-
-apply from: "$rootDir/common.gradle"
diff --git a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher.png b/src/de/anifreakz/res/mipmap-hdpi/ic_launcher.png
deleted file mode 100644
index 4916e3478..000000000
Binary files a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_back.png b/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_back.png
deleted file mode 100644
index 8dc560dd4..000000000
Binary files a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_back.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_fore.png b/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_fore.png
deleted file mode 100644
index 82128e8f8..000000000
Binary files a/src/de/anifreakz/res/mipmap-hdpi/ic_launcher_adaptive_fore.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher.png b/src/de/anifreakz/res/mipmap-mdpi/ic_launcher.png
deleted file mode 100644
index 22c817568..000000000
Binary files a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_back.png b/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_back.png
deleted file mode 100644
index f8feb6e59..000000000
Binary files a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_back.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_fore.png b/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_fore.png
deleted file mode 100644
index 167ab5c43..000000000
Binary files a/src/de/anifreakz/res/mipmap-mdpi/ic_launcher_adaptive_fore.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher.png b/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher.png
deleted file mode 100644
index 5cf3fc535..000000000
Binary files a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_back.png b/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_back.png
deleted file mode 100644
index 1b560124d..000000000
Binary files a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_back.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_fore.png b/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_fore.png
deleted file mode 100644
index bc38ded0f..000000000
Binary files a/src/de/anifreakz/res/mipmap-xhdpi/ic_launcher_adaptive_fore.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher.png b/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher.png
deleted file mode 100644
index d5ee304bf..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_back.png b/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_back.png
deleted file mode 100644
index 369383ac8..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_back.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_fore.png b/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_fore.png
deleted file mode 100644
index b1733244d..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxhdpi/ic_launcher_adaptive_fore.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher.png b/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher.png
deleted file mode 100644
index f59d2b706..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_back.png b/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_back.png
deleted file mode 100644
index de26e98f5..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_back.png and /dev/null differ
diff --git a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_fore.png b/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_fore.png
deleted file mode 100644
index 63dea94fe..000000000
Binary files a/src/de/anifreakz/res/mipmap-xxxhdpi/ic_launcher_adaptive_fore.png and /dev/null differ
diff --git a/src/de/anifreakz/src/eu/kanade/tachiyomi/animeextension/de/anifreakz/Anifreakz.kt b/src/de/anifreakz/src/eu/kanade/tachiyomi/animeextension/de/anifreakz/Anifreakz.kt
deleted file mode 100644
index 0f1c2e23e..000000000
--- a/src/de/anifreakz/src/eu/kanade/tachiyomi/animeextension/de/anifreakz/Anifreakz.kt
+++ /dev/null
@@ -1,264 +0,0 @@
-package eu.kanade.tachiyomi.animeextension.de.anifreakz
-
-import android.app.Application
-import android.content.SharedPreferences
-import androidx.preference.ListPreference
-import androidx.preference.PreferenceScreen
-import eu.kanade.tachiyomi.animeextension.de.anifreakz.extractors.AnimefreakzExtractor
-import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource
-import eu.kanade.tachiyomi.animesource.model.AnimeFilterList
-import eu.kanade.tachiyomi.animesource.model.SAnime
-import eu.kanade.tachiyomi.animesource.model.SEpisode
-import eu.kanade.tachiyomi.animesource.model.Video
-import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource
-import eu.kanade.tachiyomi.network.GET
-import eu.kanade.tachiyomi.network.POST
-import eu.kanade.tachiyomi.util.asJsoup
-import okhttp3.Headers
-import okhttp3.MediaType.Companion.toMediaType
-import okhttp3.OkHttpClient
-import okhttp3.Request
-import okhttp3.RequestBody.Companion.toRequestBody
-import okhttp3.Response
-import org.jsoup.nodes.Document
-import org.jsoup.nodes.Element
-import uy.kohesive.injekt.Injekt
-import uy.kohesive.injekt.api.get
-import kotlin.Exception
-
-class Anifreakz : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
-
- override val name = "Anifreakz"
-
- override val baseUrl = "https://anifreakz.com"
-
- override val lang = "de"
-
- override val supportsLatest = false
-
- override val client: OkHttpClient = network.cloudflareClient
-
- private val preferences: SharedPreferences by lazy {
- Injekt.get().getSharedPreferences("source_$id", 0x0000)
- }
-
- override fun popularAnimeSelector(): String = "div.row.row-cols-md-5 div.col div.list-movie"
-
- override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/series?filter={\"sorting\":\"popular\"}&page=$page")
-
- override fun popularAnimeFromElement(element: Element): SAnime {
- val anime = SAnime.create()
- anime.setUrlWithoutDomain(element.select("a.list-media").attr("href"))
- anime.thumbnail_url = element.select("a.list-media div.media.media-cover").attr("data-src")
- anime.title = element.select("div.list-caption a.list-title").text()
- return anime
- }
-
- override fun popularAnimeNextPageSelector(): String = "li.page-item:last-child a"
-
- // episodes
-
- override fun episodeListRequest(anime: SAnime): Request {
- return GET("$baseUrl${anime.url}", headers = Headers.headersOf("if-modified-since", ""))
- }
-
- override fun episodeListSelector() = throw Exception("not used")
-
- override fun episodeListParse(response: Response): List {
- val document = response.asJsoup()
- val url = document.select("meta[property=\"og:url\"]").attr("content")
- val episodeList = mutableListOf()
- if (url.contains("/serie/")) {
- val seasonElements = document.select("div.episodes.tab-content div.tab-pane")
- seasonElements.forEach {
- val episode = parseEpisodesFromSeries(it)
- episodeList.addAll(episode)
- }
- } else {
- val episode = SEpisode.create()
- episode.name = document.select("div.caption-content h1").text()
- episode.episode_number = 1F
- episode.setUrlWithoutDomain(document.select("link[rel=canonical]").attr("href"))
- episodeList.add(episode)
- }
- return episodeList.reversed()
- }
-
- private fun parseEpisodesFromSeries(element: Element): List {
- val season = element.attr("id")
- .substringAfter("season-")
- val episodeElements = element.select("a")
- return episodeElements.map { episodeFromElement(it, season) }
- }
-
- override fun episodeFromElement(element: Element): SEpisode = throw Exception("not Used")
-
- private fun episodeFromElement(element: Element, season: String): SEpisode {
- val episode = SEpisode.create()
- episode.setUrlWithoutDomain(element.attr("href"))
- episode.episode_number = element.select("div.episode").text()
- .substringBefore(".Episode").toFloat()
- val folge = element.select("div.episode").text()
- .substringBefore(".Episode")
- episode.name = "Staffel $season Folge $folge : " + element.select("div.name").text()
- return episode
- }
-
- // Video Extractor
-
- override fun videoListParse(response: Response): List