diff --git a/definitions/v10/1337x.yml b/definitions/v10/1337x.yml
new file mode 100644
index 000000000..478a2e148
--- /dev/null
+++ b/definitions/v10/1337x.yml
@@ -0,0 +1,296 @@
+---
+id: 1337x
+name: 1337x
+description: "1337X is a Public torrent site that offers verified torrent downloads"
+language: en-US
+type: public
+encoding: UTF-8
+followredirect: true
+requestDelay: 2
+links:
+ - https://1337x.to/
+ - https://1337x.st/
+ - https://x1337x.ws/
+ - https://x1337x.eu/
+ - https://x1337x.se/
+ - https://1337x.unblockit.click/
+ - https://1337x.mrunblock.guru/
+ - https://1337x.unblockninja.com/
+legacylinks:
+ - https://1337x.is/
+ - https://1337x.nocensor.work/
+ - https://1337x.unblockit.how/
+ - https://1337x.unblockit.cam/
+ - https://1337x.nocensor.biz/
+ - https://1337x.gd/
+ - https://1337x.unblockit.day/
+ - https://1337x.unblockit.llc/
+ - https://1337x.unblockit.blue/
+ - https://1337x.unblockit.name/
+ - https://1337x.nocensor.sbs/
+ - https://1337x.unblockit.ist/
+ - https://1337x.unblockit.bet/
+ - https://1337x.unblockit.cat/
+ - https://1337x.unblockit.nz/
+ - https://1337x.nocensor.world/
+ - https://1337x.unblockit.page/
+ - https://1337x.unblockit.pet/
+ - https://1337x.nocensor.lol/
+ - https://1337x.unblockit.ink/
+ - https://1337x.nocensor.art/
+ - https://1337x.unblockit.bio/
+ - https://1337x.unblockit.boo/
+
+caps:
+ categorymappings:
+ # Anime
+ - {id: 28, cat: TV/Anime, desc: "Anime/Anime"}
+ - {id: 78, cat: TV/Anime, desc: "Anime/Dual Audio"}
+ - {id: 79, cat: TV/Anime, desc: "Anime/Dubbed"}
+ - {id: 80, cat: TV/Anime, desc: "Anime/Subbed"}
+ - {id: 81, cat: TV/Anime, desc: "Anime/Raw"}
+ # Audio
+ - {id: 22, cat: Audio/MP3, desc: "Music/MP3"}
+ - {id: 23, cat: Audio/Lossless, desc: "Music/Lossless"}
+ - {id: 24, cat: Audio, desc: "Music/DVD"}
+ - {id: 25, cat: Audio/Video, desc: "Music/Video"}
+ - {id: 26, cat: Audio, desc: "Music/Radio"}
+ - {id: 27, cat: Audio/Other, desc: "Music/Other"}
+ - {id: 53, cat: Audio, desc: "Music/Album"}
+ - {id: 58, cat: Audio, desc: "Music/Box set"}
+ - {id: 59, cat: Audio, desc: "Music/Discography"}
+ - {id: 60, cat: Audio, desc: "Music/Single"}
+ - {id: 68, cat: Audio, desc: "Music/Concerts"}
+ - {id: 69, cat: Audio, desc: "Music/AAC"}
+ # Movies
+ - {id: 1, cat: Movies/DVD, desc: "Movies/DVD"}
+ - {id: 2, cat: Movies/SD, desc: "Movies/Divx/Xvid"}
+ - {id: 3, cat: Movies, desc: "Movies/SVCD/VCD"}
+ - {id: 4, cat: Movies/Foreign, desc: "Movies/Dubs/Dual Audio"}
+ - {id: 42, cat: Movies/HD, desc: "Movies/HD"}
+ - {id: 54, cat: Movies/HD, desc: "Movies/h.264/x264"}
+ - {id: 55, cat: Movies, desc: "Movies/Mp4"}
+ - {id: 66, cat: Movies/3D, desc: "Movies/3D"}
+ - {id: 70, cat: Movies/HD, desc: "Movies/HEVC/x265"}
+ - {id: 73, cat: Movies, desc: "Movies/Bollywood"}
+ - {id: 76, cat: Movies/UHD, desc: "Movies/UHD"}
+ # TV
+ - {id: 5, cat: TV, desc: "TV/DVD"}
+ - {id: 6, cat: TV, desc: "TV/Divx/Xvid"}
+ - {id: 7, cat: TV, desc: "TV/SVCD/VCD"}
+ - {id: 41, cat: TV/HD, desc: "TV/HD"}
+ - {id: 71, cat: TV, desc: "TV/HEVC/x265"}
+ - {id: 74, cat: TV, desc: "TV/Cartoons"}
+ - {id: 75, cat: TV/SD, desc: "TV/SD"}
+ - {id: 9, cat: TV/Documentary, desc: "TV/Documentary"}
+ # Apps
+ - {id: 18, cat: PC, desc: "Apps/PC Software"}
+ - {id: 19, cat: PC/Mac, desc: "Apps/Mac"}
+ - {id: 20, cat: PC, desc: "Apps/Linux"}
+ - {id: 21, cat: PC, desc: "Apps/Other"}
+ - {id: 56, cat: PC/Mobile-Android, desc: "Apps/Android"}
+ - {id: 57, cat: PC/Mobile-iOS, desc: "Apps/iOS"}
+ # Games
+ - {id: 10, cat: PC/Games, desc: "Games/PC Game"}
+ - {id: 11, cat: Console/PS3, desc: "Games/PS2"}
+ - {id: 12, cat: Console/PSP, desc: "Games/PSP"}
+ - {id: 13, cat: Console/XBox, desc: "Games/Xbox"}
+ - {id: 14, cat: Console/XBox 360, desc: "Games/Xbox360"}
+ - {id: 15, cat: Console/PS3, desc: "Games/PS1"}
+ - {id: 16, cat: Console/Other, desc: "Games/Dreamcast"}
+ - {id: 17, cat: PC/Mobile-Other, desc: "Games/Other"}
+ - {id: 43, cat: Console/PS3, desc: "Games/PS3"}
+ - {id: 44, cat: Console/Wii, desc: "Games/Wii"}
+ - {id: 45, cat: Console/NDS, desc: "Games/DS"}
+ - {id: 46, cat: Console/Other, desc: "Games/GameCube"}
+ - {id: 72, cat: Console/3DS, desc: "Games/3DS"}
+ - {id: 77, cat: Console/PS4, desc: "Games/PS4"}
+ - {id: 82, cat: Console/Other, desc: "Games/Switch"}
+ # XXX
+ - {id: 48, cat: XXX/DVD, desc: "XXX/Video"}
+ - {id: 49, cat: XXX/ImageSet, desc: "XXX/Picture"}
+ - {id: 50, cat: XXX, desc: "XXX/Magazine"}
+ - {id: 51, cat: XXX, desc: "XXX/Hentai"}
+ - {id: 67, cat: XXX, desc: "XXX/Games"}
+ # Other
+ - {id: 33, cat: Other, desc: "Other/Emulation"}
+ - {id: 34, cat: Books, desc: "Other/Tutorial"}
+ - {id: 35, cat: Other, desc: "Other/Sounds"}
+ - {id: 36, cat: Books/EBook, desc: "Other/E-books"}
+ - {id: 37, cat: Other, desc: "Other/Images"}
+ - {id: 38, cat: Other, desc: "Other/Mobile Phone"}
+ - {id: 39, cat: Books/Comics, desc: "Other/Comics"}
+ - {id: 40, cat: Other/Misc, desc: "Other/Other"}
+ - {id: 47, cat: Other, desc: "Other/Nulled Script"}
+ - {id: 52, cat: Audio/Audiobook, desc: "Other/Audiobook"}
+
+ modes:
+ search: [q]
+ tv-search: [q, season, ep]
+ movie-search: [q]
+ music-search: [q, album, artist]
+ book-search: [q]
+ allowrawsearch: true
+ limitsDefault: 80
+ limitsMax: 80
+
+settings:
+ - name: flaresolverr
+ type: info
+ label: FlareSolverr
+ default: This site may use Cloudflare DDoS Protection, therefore Prowlarr requires FlareSolverr to access it.
+ - name: downloadlink
+ type: select
+ label: Download link
+ default: "http://itorrents.org/"
+ options:
+ "http://itorrents.org/": iTorrents.org
+ "magnet:": magnet
+ - name: downloadlink2
+ type: select
+ label: Download link (fallback)
+ default: "magnet:"
+ options:
+ "http://itorrents.org/": iTorrents.org
+ "magnet:": magnet
+ - name: info_download
+ type: info
+ label: About the Download links
+ default: As the iTorrents .torrent download link on this site is known to fail from time to time, we suggest using the magnet link as a fallback. The BTCache and Torrage services are not supported because they require additional user interaction (a captcha for BTCache and a download button on Torrage.)
+ - name: sort
+ type: select
+ label: Sort requested from site
+ default: time
+ options:
+ time: created
+ seeders: seeders
+ size: size
+ - name: type
+ type: select
+ label: Order requested from site
+ default: desc
+ options:
+ desc: desc
+ asc: asc
+
+download:
+ # the .torrent URL and magnet URI are on the details page
+ selectors:
+ - selector: ul li a[href^="{{ .Config.downloadlink }}"]
+ attribute: href
+ - selector: ul li a[href^="{{ .Config.downloadlink2 }}"]
+ attribute: href
+
+search:
+ pageSize: 20
+ pageable: "{{ if or .Query.Album .Query.Artist .Keywords }}true{{ else }}false{{ end }}"
+
+ paths:
+ # present first page of movies tv and music results if there are no search parms supplied (20 hits per page)
+ - path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Movies{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/1/"
+ - path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/TV{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}2{{ else }}1{{ end }}/"
+ - path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Music{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}3{{ else }}1{{ end }}/"
+ - path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Other{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}4{{ else }}1{{ end }}/"
+
+ rows:
+ selector: tr:has(a[href^="/torrent/"])
+
+ fields:
+ title_default:
+ # the movies, tv and music pages abbreviate the title
+ selector: td[class^="coll-1"] a[href^="/torrent/"]
+ title_optional:
+ # the movies, tv and music pages abbreviate the title so we process the href instead. #8137
+ optional: true
+ selector: td[class^="coll-1"] a[href^="/torrent/"]:contains("...")
+ attribute: href
+ filters:
+ - name: urldecode
+ - name: split
+ args: ["/", 3]
+ title:
+ # title_optional can be empty so use the title_default instead #8586
+ text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
+ filters:
+ - name: re_replace
+ args: ["-([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "~$1"]
+ - name: replace
+ args: ["-", " "]
+ - name: re_replace
+ args: ["~([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "-$1"]
+ - name: replace
+ args: ["\u000f", ""] # get rid of unwanted character #6582
+ # cleanup for Sonarr
+ - name: re_replace # EP 3 4 to E3-4
+ args: ["(?i)\\sEP\\s(\\d{1,2})\\s(E?\\s?\\d{1,2})\\s", " E$1-$2 "]
+ - name: re_replace # S02E04 05 to S02E04-05
+ args: ["(?i)\\sS(\\d{1,2})\\s?E\\s?(\\d{1,2})\\s(E?\\s?\\d{1,2})\\s", " S$1E$2-$3 "]
+ - name: re_replace
+ args: ["(?i)AC3\\s?(\\d)\\s(\\d)", "AC3 $1.$2"]
+ - name: re_replace
+ args: ["(?i) DD\\s?(\\d)\\s(\\d)", " DD $1.$2"]
+ - name: re_replace
+ args: ["(?i) DDP\\s?(\\d)\\s(\\d)", " DDP $1.$2"]
+ - name: re_replace
+ args: ["(?i)\\sE\\s?AC3", " EAC3"]
+ - name: re_replace
+ args: ["(?i)WEB\\sDL", "WEB-DL"]
+ - name: re_replace
+ args: ["(?i)HDTVRIP", "HDTV"]
+ category_sub:
+ optional: true
+ selector: td[class^="coll-1"] a[href^="/sub/"]
+ attribute: href
+ filters:
+ # extract the third part
+ - name: split
+ args: ["/", 2]
+ category:
+ text: "{{ if .Result.category_sub }}{{ .Result.category_sub }}{{ else }}40{{ end }}"
+ details:
+ selector: td[class^="coll-1"] a[href^="/torrent/"]
+ attribute: href
+ download:
+ # .torrent link is on the details page
+ selector: td[class^="coll-1"] a[href^="/torrent/"]
+ attribute: href
+ # dates come in three flavours:
+ date_year:
+ # (within this year) 7am Sep. 14th
+ optional: true
+ selector: td[class^="coll-date"]:not(:contains(":")):not(:contains("'"))
+ filters:
+ - name: re_replace
+ args: ["st|nd|rd|th", ""]
+ - name: dateparse
+ args: "htt MMM. d"
+ date_years:
+ # (more than a year ago) Apr. 18th '11
+ optional: true
+ selector: td[class^="coll-date"]:contains("'")
+ filters:
+ - name: replace
+ args: ["'", ""]
+ - name: re_replace
+ args: ["st|nd|rd|th", ""]
+ - name: dateparse
+ args: "MMM. d yy"
+ date_today:
+ # (today) 12:25am
+ optional: true
+ selector: td[class^="coll-date"]:contains(":")
+ filters:
+ - name: fuzzytime
+ date:
+ text: "{{ if or .Result.date_year .Result.date_years .Result.date_today }}{{ or .Result.date_year .Result.date_years .Result.date_today }}{{ else }}now{{ end }}"
+ size:
+ selector: td[class^="coll-4"]
+ seeders:
+ selector: td[class^="coll-2"]
+ leechers:
+ selector: td[class^="coll-3"]
+ downloadvolumefactor:
+ text: 0
+ uploadvolumefactor:
+ text: 1
+# engine n/a
diff --git a/definitions/v10/anthelion-api.yml b/definitions/v10/anthelion-api.yml
new file mode 100644
index 000000000..05cf4455f
--- /dev/null
+++ b/definitions/v10/anthelion-api.yml
@@ -0,0 +1,160 @@
+---
+id: anthelion-api
+name: Anthelion (API)
+description: "Anthelion is a Private MOVIES tracker"
+language: en-US
+type: private
+encoding: UTF-8
+links:
+ - https://anthelion.me/
+
+caps:
+ categorymappings:
+ - {id: 2000, cat: Movies}
+ - {id: 2030, cat: Movies/SD}
+ - {id: 2040, cat: Movies/HD}
+ - {id: 2045, cat: Movies/UHD}
+ - {id: 2050, cat: Movies/BluRay}
+ - {id: 2080, cat: Movies/WEB-DL}
+ - {id: 8000, cat: Other}
+
+ modes:
+ search: [q]
+ movie-search: [q, imdbid, tmdbid]
+ # note: the api any supports movie search so there is no tv season/episode support.
+ # not using year search because torznab adds it to the q= which results in &q=keyword+2022&year=2022 sent to api !?!
+
+settings:
+ - name: apikey
+ type: text
+ label: APIKey
+ - name: info_key
+ type: info
+ label: About your API key
+ default: "Find or Generate a new API Key by accessing your Anthelion account Settings page and scrolling down to the API Key section.
Tick the Search and Download checkboxes and click the save profile button to generate the key."
+
+login:
+ path: api.php
+ method: get
+ inputs:
+ api_key: "{{ .Config.apikey }}"
+ error:
+ - selector: ":root:contains(\"Unrecognized key\")"
+ message:
+ text: "The API key was not accepted by {{ .Config.sitelink }}."
+ - selector: ":root:contains(\"No API_KEY provided\")"
+ message:
+ text: "You did not enter an API key."
+
+search:
+ pageSize: 100
+
+ paths:
+ # docs: https://anthelion.me/forums.php?action=viewthread&threadid=1026
+ - path: api.php
+ response:
+ type: json
+
+ inputs:
+ api_key: "{{ .Config.apikey }}"
+ o: json
+ t: movie
+ q: "{{ .Keywords }}"
+ tmdb: "{{ .Query.TMDBID }}"
+ imdb: "{{ .Query.IMDBIDShort }}"
+ cat: "{{ join .Categories \",\" }}"
+ limit: "{{ .Query.Limit }}"
+ offset: "{{ .Query.Offset }}"
+
+ rows:
+ selector: item
+ count:
+ selector: response.total
+
+ fields:
+ category:
+ selector: category
+ filters:
+ - name: split
+ args: [",", -1]
+ year:
+ selector: year
+ optional: true
+ _codec:
+ selector: codec
+ _container:
+ selector: container
+ _media:
+ selector: media
+ filters:
+ - name: replace
+ args: ["WEB", "WEB-DL"]
+ _resolution:
+ selector: resolution
+ _audioFormat:
+ selector: audioFormat
+ _subbing:
+ selector: subbing
+ optional: true
+ _flags:
+ selector: flags
+ optional: true
+ filters:
+ - name: replace
+ args: [",", " "]
+ _language:
+ selector: language
+ optional: true
+ _releaseGroup:
+ selector: releaseGroup
+ optional: true
+ filters:
+ - name: trim
+ title:
+ selector: title
+ filters:
+ - name: htmldecode
+ - name: append
+ args: " {{ .Result.year }} {{ .Result._codec }} {{ .Result._container }} {{ .Result._media }} {{ .Result._resolution }} {{ .Result._audioFormat }}{{ if .Result._subbing }} Subs{{ else }}{{ end }}{{ if .Result._flags }} {{ .Result._flags }}{{ else }}{{ end }}{{ if .Result._language }} {{ .Result._language }}{{ else }}{{ end }}{{ if and (.Result._releaseGroup) (ne .Result._releaseGroup \"NULL\") }} -{{ .Result._releaseGroup }}{{ else }}{{ end }}"
+ details:
+ selector: guid
+ download:
+ selector: link
+ filters:
+ - name: htmldecode
+ infohash:
+ selector: infohash
+ imdbid:
+ selector: imdb
+ tmdbid:
+ selector: tmdb
+ genre:
+ selector: tags
+ filters:
+ - name: replace
+ args: [".", "_"]
+ description:
+ text: "{{ .Result.genre }}"
+ files:
+ selector: fileCount
+ seeders:
+ selector: seeders
+ leechers:
+ selector: leechers
+ grabs:
+ selector: grabs
+ date:
+ # 2022-08-07T20:56:06+0200
+ selector: pubDate
+ size:
+ selector: size
+ downloadvolumefactor:
+ text: 1
+ uploadvolumefactor:
+ text: 1
+ minimumratio:
+ text: 1.0
+ minimumseedtime:
+ # 3 day (as seconds = 3 x 24 x 60 x 60)
+ text: 259200
+# json api
diff --git a/definitions/v10/bitsearch.yml b/definitions/v10/bitsearch.yml
new file mode 100644
index 000000000..5014b881e
--- /dev/null
+++ b/definitions/v10/bitsearch.yml
@@ -0,0 +1,151 @@
+---
+id: bitsearch
+name: BitSearch
+description: "BitSearch is a Public torrent meta-search engine"
+language: en-US
+type: public
+encoding: UTF-8
+requestDelay: 2
+links:
+ - https://bitsearch.to/
+ - https://bitsearch.mrunblock.guru/
+legacylinks:
+ - https://bitsearch.nocensor.biz/
+ - https://bitsearch.nocensor.sbs/
+ - https://bitsearch.nocensor.world/
+ - https://bitsearch.nocensor.lol/
+
+caps:
+ categories:
+ AudioBook: Audio/Audiobook
+ eBook: Books/EBook
+ "Ebook/Course": Books/EBook
+ Games: PC/Games
+ "Games/PC": PC/Games
+ Movies: Movies
+ Music: Audio
+ "Music/Album": Audio
+ "Music/mp3": Audio/MP3
+ "Music/Lossless": Audio/Lossless
+ "Music/Video": Audio/Video
+ Other: Other
+ "Other/Android": PC/Mobile-Android
+ "Other/Archive": Other
+ "Other/Audio": Audio
+ "Other/Database": PC
+ "Other/DiskImage": PC/ISO
+ "Other/Document": Books/Comics
+ "Other/Image": Other/Misc
+ "Other/Program": PC/0day
+ "Other/Sourcecode": PC
+ "Other/Source Code": PC
+ "Other/Video": TV
+ Softwares: PC/0day
+ "Softwares/Windows": PC/0day
+ TV: TV
+ Unknown: Other
+ XXX: XXX
+
+ modes:
+ search: [q]
+ tv-search: [q, season, ep]
+ movie-search: [q]
+ music-search: [q]
+ book-search: [q]
+ limitsDefault: 50
+ limitsMax: 50
+
+settings:
+ - name: sort
+ type: select
+ label: Sort requested from site
+ default: date
+ options:
+ date: created
+ seeders: seeders
+ size: size
+ - name: type
+ type: select
+ label: Order requested from site
+ default: desc
+ options:
+ desc: desc
+ asc: asc
+
+search:
+ pageSize: 50
+ firstPageNumber: 1
+
+ paths:
+ # https://bitsearch.to/search?q=&sort=date&order=desc
+ - path: search
+ inputs:
+ q: "{{ .Keywords }}"
+ sort: "{{ .Config.sort }}"
+ order: "{{ .Config.type }}"
+ limit: "{{ .Query.Limit }}"
+ page: "{{ .Query.Page }}"
+
+ keywordsfilters:
+ - name: re_replace
+ args: ["\\.", " "]
+
+ rows:
+ selector: div.search-result:has(a.dl-torrent), li.search-result:has(a.dl-torrent)
+
+ fields:
+ category:
+ selector: a.category
+ title:
+ selector: h5 a
+ details:
+ selector: h5 a
+ attribute: href
+ download:
+ selector: a.dl-torrent
+ attribute: href
+ infohash:
+ selector: a[href^="magnet:?xt"]
+ attribute: href
+ filters:
+ - name: regexp
+ args: ([A-F|a-f|0-9]{40})
+ grabs:
+ selector: div.stats div:has(img[alt="Download"])
+ filters:
+ - name: replace
+ args: [".", ""]
+ - name: replace
+ args: ["K", "00"]
+ - name: replace
+ args: ["M", "00000"]
+ size:
+ selector: div.stats div:has(img[alt="Size"])
+ seeders:
+ selector: div.stats div:has(img[alt="Seeder"])
+ filters:
+ - name: replace
+ args: [".", ""]
+ - name: replace
+ args: ["K", "00"]
+ - name: replace
+ args: ["M", "00000"]
+ leechers:
+ selector: div.stats div:has(img[alt="Leecher"])
+ filters:
+ - name: replace
+ args: [".", ""]
+ - name: replace
+ args: ["K", "00"]
+ - name: replace
+ args: ["M", "00000"]
+ date:
+ selector: div.stats div:has(img[alt="Date"])
+ filters:
+ - name: dateparse
+ args: "MMM d, yyyy"
+ downloadvolumefactor:
+ text: 0
+ uploadvolumefactor:
+ text: 1
+# engine n/a
diff --git a/definitions/v10/digitalcore.yml b/definitions/v10/digitalcore.yml
new file mode 100644
index 000000000..ddc5784b3
--- /dev/null
+++ b/definitions/v10/digitalcore.yml
@@ -0,0 +1,230 @@
+---
+id: digitalcore
+name: DigitalCore
+description: "DigitalCore is a Private Torrent Tracker for MOVIES / TV / GENERAL"
+language: en-US
+type: private
+encoding: UTF-8
+links:
+ - https://digitalcore.club/
+
+caps:
+ categorymappings:
+ - {id: 2, cat: Movies/SD, desc: Movies/SD}
+ - {id: 1, cat: Movies/DVD, desc: Movies/DVDR}
+ - {id: 5, cat: Movies/HD, desc: Movies/720p}
+ - {id: 6, cat: Movies/HD, desc: Movies/1080p}
+ - {id: 4, cat: Movies/UHD, desc: Movies/2160p}
+ - {id: 3, cat: Movies/BluRay, desc: Movies/BluRay}
+ - {id: 38, cat: Movies/UHD, desc: Movies/Bluray/UHD}
+ - {id: 7, cat: Movies/HD, desc: Movies/PACKS}
+ - {id: 10, cat: TV/SD, desc: Tv/SD}
+ - {id: 11, cat: TV/SD, desc: Tv/DVDR}
+ - {id: 8, cat: TV/HD, desc: Tv/720p}
+ - {id: 9, cat: TV/HD, desc: Tv/1080p}
+ - {id: 13, cat: TV/UHD, desc: Tv/2160p}
+ - {id: 14, cat: TV/HD, desc: Tv/BluRay}
+ - {id: 12, cat: TV/HD, desc: Tv/PACKS}
+ - {id: 17, cat: Other, desc: Unknown}
+ - {id: 18, cat: PC/0day, desc: Apps/0DAY}
+ - {id: 20, cat: PC/ISO, desc: Apps/PC}
+ - {id: 21, cat: PC/Mac, desc: Apps/Mac}
+ - {id: 33, cat: PC, desc: Apps/Tutorials}
+ - {id: 22, cat: Audio/MP3, desc: Music/MP3}
+ - {id: 23, cat: Audio/Lossless, desc: Music/FLAC}
+ - {id: 24, cat: Audio/Video, desc: Music/MTV}
+ - {id: 29, cat: Audio, desc: Music/PACKS}
+ - {id: 39, cat: Audio/Video, desc: Music/DVD}
+ - {id: 40, cat: Audio/Video, desc: Music/Bluray}
+ - {id: 25, cat: PC/Games, desc: Games/PC}
+ - {id: 27, cat: PC/Mac, desc: Games/Mac}
+ - {id: 26, cat: Console, desc: Games/Consoles}
+ - {id: 43, cat: Console, desc: Games/ROMS}
+ - {id: 42, cat: XXX/Other, desc: Games/XXX}
+ - {id: 44, cat: Audio/Audiobook, desc: Audiobooks}
+ - {id: 28, cat: Books/EBook, desc: Ebooks}
+ - {id: 30, cat: XXX/SD, desc: XXX/SD}
+ - {id: 31, cat: XXX, desc: XXX/HD}
+ - {id: 32, cat: XXX/UHD, desc: XXX/4K}
+ - {id: 35, cat: XXX/SD, desc: XXX/Movies/SD}
+ - {id: 36, cat: XXX, desc: XXX/Movies/HD}
+ - {id: 37, cat: XXX/UHD, desc: XXX/Movies/4K}
+ - {id: 34, cat: XXX/ImageSet, desc: XXX/Imagesets}
+ - {id: 41, cat: XXX, desc: XXX/PACKS}
+
+ modes:
+ search: [q]
+ tv-search: [q, season, ep, imdbid]
+ movie-search: [q, imdbid]
+ music-search: [q]
+ book-search: [q]
+
+settings:
+ - name: cookie
+ type: text
+ label: Cookie
+ - name: info
+ type: info
+ label: How to get the Cookie
+ default: "