diff --git a/project-words.txt b/project-words.txt
index 7eaa7bd..548999f 100644
--- a/project-words.txt
+++ b/project-words.txt
@@ -63,6 +63,7 @@ mailcatcher
mdsvex
Metainfo
mickvandijke
+mika
Multiuser
nojekyll
nologin
@@ -74,6 +75,7 @@ postbuild
postmarkapp
println
privkey
+privtracker
problably
proto
Radeon
@@ -99,6 +101,7 @@ torrenting
Torrust
Torznab
Troubleshoting
+Ttorrent
Tzou
usermod
valgrind
diff --git a/src/lib/components/atoms/Table.svelte b/src/lib/components/atoms/Table.svelte
index 5e32616..40736c4 100644
--- a/src/lib/components/atoms/Table.svelte
+++ b/src/lib/components/atoms/Table.svelte
@@ -13,9 +13,7 @@
{#each tableData as row}
{#each tableHeading as heading}
- {#if heading.fieldName == 'site'}
- visit |
- {:else if heading.fieldName == 'demo'}
+ {#if ['site', 'demo', 'repo', 'useCase'].includes(heading.fieldName)}
visit |
{:else}
{row[heading.fieldName]} |
diff --git a/src/lib/constants/constants.ts b/src/lib/constants/constants.ts
index 73db18c..d11f77a 100644
--- a/src/lib/constants/constants.ts
+++ b/src/lib/constants/constants.ts
@@ -98,27 +98,27 @@ export const indexTableData = [
stars: '38',
contributors: '11',
type: 'General',
- localHosted: 'NO',
- multiuser: 'YES',
- public: 'YES',
- bitTorrentV2: 'NO',
- dhtCrawler: 'NO',
+ localHosted: 'No',
+ multiuser: 'Yes',
+ public: 'Yes',
+ bitTorrentV2: 'No',
+ dhtCrawler: 'No',
db: 'SQLite3;MySQL',
language: 'Rust;TypeScript;Nuxt',
- api: 'YES',
+ api: 'Yes',
importer: 'REST',
torznab: 'healthcheck',
- autoclassifier: 'NO',
- integrationWithArrs: 'NO',
- IntegrationWithTMDB: 'NO',
- observabilityAndTelemetry: 'NO',
- mobileFriendly: 'NO',
- multiLanguage: 'NO',
- themes: 'YES',
- forum: 'NO',
- invitations: 'NO',
- polls: 'NO',
- webfeed: 'NO',
+ autoclassifier: 'No',
+ integrationWithArrs: 'No',
+ IntegrationWithTMDB: 'No',
+ observabilityAndTelemetry: 'No',
+ mobileFriendly: 'No',
+ multiLanguage: 'No',
+ themes: 'Yes',
+ forum: 'No',
+ invitations: 'No',
+ polls: 'No',
+ webfeed: 'No',
site: 'https://github.com/torrust/torrust-index',
demo: 'https://index.torrust-demo.com/torrents'
},
@@ -129,9 +129,9 @@ export const indexTableData = [
stars: '1.8k',
contributors: '108',
type: 'General',
- localHosted: 'NO',
- multiuser: 'YES',
- public: 'YES',
+ localHosted: 'No',
+ multiuser: 'Yes',
+ public: 'Yes',
bitTorrentV2: '?',
dhtCrawler: '? ',
db: 'MySQL',
@@ -144,69 +144,323 @@ export const indexTableData = [
IntegrationWithTMDB: '?',
observabilityAndTelemetry: '?',
mobileFriendly: '?',
- multiLanguage: 'YES',
+ multiLanguage: 'Yes',
themes: '?',
- forum: 'YES',
- invitations: 'YES',
- polls: 'YES',
+ forum: 'Yes',
+ invitations: 'Yes',
+ polls: 'Yes',
webfeed: '?',
site: 'https://github.com/HDInnovations/UNIT3D-Community-Edition',
demo: 'https://unit3d.dev'
}
];
-export const trackerTableHeadings = [
- 'Name',
- 'License',
- 'Starts',
- 'Contributors',
- 'Type',
- 'UDP',
- 'HTTP',
- 'WebTorrent',
- 'API',
- 'Scrape',
- 'Stats',
- 'Whitelist',
- 'Integrations',
- 'High Availability',
- 'TLS',
- 'IPv6',
- 'Databases',
- 'Docker',
- 'K8S',
- 'Language',
- 'OS',
- 'Repo Link',
- 'Demo',
- 'Use Case'
+export const trackerBasicTableHeadings = [
+ { displayName: 'Name', fieldName: 'name' },
+ { displayName: 'License', fieldName: 'license' },
+ { displayName: 'Starts', fieldName: 'starts' },
+ { displayName: 'Contributors', fieldName: 'contributors' },
+ { displayName: 'Type', fieldName: 'type' },
+ { displayName: 'UDP', fieldName: 'udp' },
+ { displayName: 'HTTP', fieldName: 'http' },
+ { displayName: 'WebTorrent', fieldName: 'webTorrent' },
+ { displayName: 'Language', fieldName: 'language' },
+ { displayName: 'OS', fieldName: 'os' },
+ { displayName: 'Repo', fieldName: 'repo' },
+ { displayName: 'Demo', fieldName: 'demo' }
+];
+
+export const trackerFeaturesTableHeadings = [
+ { displayName: 'Name', fieldName: 'name' },
+ { displayName: 'Scrape', fieldName: 'scrape' },
+ { displayName: 'API', fieldName: 'api' },
+ { displayName: 'Stats', fieldName: 'stats' },
+ { displayName: 'Whitelist', fieldName: 'whitelist' },
+ { displayName: 'Integrations', fieldName: 'integrations' },
+ { displayName: 'High Availability', fieldName: 'highAvailability' },
+ { displayName: 'TLS', fieldName: 'tls' },
+ { displayName: 'IPv6', fieldName: 'ipv6' },
+ { displayName: 'Databases', fieldName: 'databases' },
+ { displayName: 'Docker', fieldName: 'docker' },
+ { displayName: 'K8S', fieldName: 'k8s' }
];
export const trackerTableData = [
- 'Torrust',
- 'AGPL-3.0 license',
- '312',
- '13',
- 'Mixed',
- 'Yes',
- 'No',
- 'No',
- 'Yes',
- 'Yes',
- 'Yes',
- 'Yes',
- '?',
- 'No',
- 'Yes',
- 'Yes',
- 'Optional:\nSqlite\nMysQL',
- 'Yes',
- '?',
- 'Rust',
- 'Linux, MacOs',
- 'link',
- 'udp://tracker.torrust-demo.com:6969/announce',
- 'https://tracker.torrust-demo.com/announce'
+ {
+ name: 'Torrust',
+ license: 'AGPL-3.0',
+ starts: '312',
+ contributors: '13',
+ type: 'Mixed',
+ udp: 'Yes',
+ http: 'No',
+ webTorrent: 'No',
+ api: 'Yes',
+ scrape: 'Yes',
+ stats: 'Yes',
+ whitelist: 'Yes',
+ integrations: 'No',
+ highAvailability: 'No',
+ tls: 'Yes',
+ ipv6: 'Yes',
+ databases: 'Optional: Sqlite,MysQL',
+ docker: 'Yes',
+ k8s: 'No',
+ language: 'Rust',
+ os: 'Linux, MacOs',
+ repo: 'https://github.com/torrust/torrust-tracker',
+ demo: 'udp://tracker.torrust-demo.com:6969/announce'
+ },
+ {
+ name: 'opentracker',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'bittorrent-tracker',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'Chihaya',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'Ttorrent',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'aquatic',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'privtracker',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'XBT',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'mika',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'Radiance',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ },
+ {
+ name: 'Ocelot',
+ license: '?',
+ starts: '?',
+ contributors: '?',
+ type: '?',
+ udp: '?',
+ http: '?',
+ webTorrent: '?',
+ api: '?',
+ scrape: '?',
+ stats: '?',
+ whitelist: '?',
+ integrations: '?',
+ highAvailability: '?',
+ tls: '?',
+ ipv6: '?',
+ databases: '?',
+ docker: '?',
+ k8s: '?',
+ language: '?',
+ os: '?',
+ repo: '',
+ demo: '?'
+ }
];
export interface TableItem {
diff --git a/src/routes/(pages)/torrent-tracker/+page.svelte b/src/routes/(pages)/torrent-tracker/+page.svelte
index c35a4eb..53595b5 100644
--- a/src/routes/(pages)/torrent-tracker/+page.svelte
+++ b/src/routes/(pages)/torrent-tracker/+page.svelte
@@ -27,7 +27,12 @@
};
});
- import { trackerTitleArr1, trackerTableHeadings, indexTableData } from '$lib/constants/constants';
+ import {
+ trackerTitleArr1,
+ trackerBasicTableHeadings,
+ trackerFeaturesTableHeadings,
+ trackerTableData
+ } from '$lib/constants/constants';
import TorrustTrackerPost from '$lib/components/singletons/TorrustTrackerPost.svelte';
@@ -57,6 +62,7 @@
+
Stack
@@ -72,14 +78,27 @@
+
Comparison to other products
+
Unlike other trackers, Torrust Tracker balances speed with feature richness. While some
trackers prioritize minimalism at the cost of flexibility, Torrust focuses on offering
extensive functionality with only a small compromise in speed.
-
+
+
+
+
General information
+
+
+
+
+