🔀 merged branch dev

This commit is contained in:
Noan
2022-08-27 01:16:18 +02:00
339 changed files with 6718 additions and 296 deletions

13
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,13 @@
# These are supported funding model platforms
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: ajnart
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

View File

@@ -1,3 +1,3 @@
files:
- source: /public/locales/en/*.json
translation: /public/locales/%two_letters_code%/%original_file_name%.json
- source: /public/locales/en/**/*.json
translation: /public/locales/%two_letters_code%/**/%original_file_name%

10
next-i18next.config.js Normal file
View File

@@ -0,0 +1,10 @@
module.exports = {
// https://www.i18next.com/overview/configuration-options#logging
debug: process.env.NODE_ENV === 'development',
i18n: {
defaultLocale: 'en',
locales: ['en', 'de', 'es', 'fr', 'it', 'ja', 'nl', 'ru', 'sv', 'zh'],
localeDetection: true,
},
reloadOnPrerender: process.env.NODE_ENV === 'development',
};

View File

@@ -1,5 +1,7 @@
const { env } = require('process');
const { i18n } = require('./next-i18next.config');
const withBundleAnalyzer = require('@next/bundle-analyzer')({
enabled: process.env.ANALYZE === 'true',
});
@@ -13,4 +15,5 @@ module.exports = withBundleAnalyzer({
outputStandalone: true,
},
output: 'standalone',
i18n,
});

View File

@@ -49,12 +49,17 @@
"axios": "^0.27.2",
"consola": "^2.15.3",
"cookies-next": "^2.1.1",
"country-flag-icons": "^1.5.5",
"dayjs": "^1.11.5",
"dockerode": "^3.3.2",
"embla-carousel-react": "^7.0.0",
"framer-motion": "^6.5.1",
"i18next": "^21.9.1",
"i18next-browser-languagedetector": "^6.1.5",
"i18next-http-backend": "^1.4.1",
"js-file-download": "^0.4.12",
"next": "12.1.6",
"next-i18next": "^11.3.0",
"prism-react-renderer": "^1.3.5",
"react": "^18.2.0",
"react-dom": "^18.2.0",
@@ -87,5 +92,9 @@
"prettier": "^2.7.1",
"typescript": "^4.7.4"
},
"resolutions": {
"@types/react": "17.0.2",
"@types/react-dom": "17.0.2"
},
"packageManager": "yarn@3.2.1"
}

View File

@@ -0,0 +1,6 @@
{
"actions": {
"save": "Speichern"
},
"tip": "Tipp: "
}

View File

@@ -0,0 +1,118 @@
{
"actionIcon": {
"tooltip": "Einen Service hinzufügen"
},
"modal": {
"title": "Service hinzufügen",
"form": {
"validation": {
"invalidUrl": "Please enter a valid URL",
"noStatusCodeSelected": "Please select a status code"
}
},
"tabs": {
"options": {
"title": "Optionen",
"form": {
"serviceName": {
"label": "Service Namen",
"placeholder": "Plex"
},
"iconUrl": {
"label": "Icon URL"
},
"serviceUrl": {
"label": "Service URL"
},
"onClickUrl": {
"label": "URL bei einem Klick"
},
"serviceType": {
"label": "Service Typ",
"defaultValue": "Andere",
"placeholder": "Wähle einen Typ aus"
},
"category": {
"label": "Kategorie",
"placeholder": "Whle eine Kategorie oder erstelle eine neue",
"nothingFound": "Nichts gefunden",
"createLabel": "+ Erstelle {{query}}"
},
"integrations": {
"apiKey": {
"label": "API Schlüssel",
"placeholder": "Dein API Schlüssel",
"validation": {
"noKey": "Invalider Schlüssel"
},
"tip": {
"text": "Erhalte deinen API Schlüssel",
"link": "hier."
}
},
"qBittorrent": {
"username": {
"label": "Benutzernamen",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalider Benutzername"
}
},
"password": {
"label": "Passwort",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalides Passwort"
}
}
},
"deluge": {
"password": {
"label": "Passwort",
"placeholder": "password",
"validation": {
"invalidPassword": "Invalides Passwort"
}
}
},
"transmission": {
"username": {
"label": "Benutzername",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalider Benutzername"
}
},
"password": {
"label": "Passwort",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalides Passwort"
}
}
}
}
}
},
"advancedOptions": {
"title": "Weitere Optionen",
"form": {
"httpStatusCodes": {
"label": "HTTP Status Nummern",
"placeholder": "Wähle eine valide Status Nummer",
"clearButtonLabel": "Auswahl löschen",
"nothingFound": "Nichts gefunden"
},
"openServiceInNewTab": {
"label": "Serivce in einem neuen Tab öffnen"
},
"buttons": {
"submit": {
"content": "Service hinzufügen"
}
}
}
}
}
}
}

View File

@@ -0,0 +1,18 @@
{
"modal": {
"title": "Einen Service bearbeiten",
"buttons": {
"save": "Service speichern"
}
},
"menu": {
"labels": {
"settings": "Einstellungen",
"dangerZone": "Gefahrenzone"
},
"actions": {
"edit": "Bearbeiten",
"delete": "Löschen"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"accordions": {
"downloads": {
"text": "Deine Downloads"
},
"others": {
"text": "Andere"
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Kalender",
"description": "Ein Kalender Modul welches bevorstehende Shows anzeigt. Es interagiert mit der API von Sonarr, Radarr, Readarr und Lidarr.",
"settings": {
"sundayStart": {
"label": "Wochenstart am Sonntag"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"buttons": {
"play": "Abspielen",
"request": "Anfragen"
}
}

View File

@@ -0,0 +1,5 @@
{
"settings": {
"label": "Settings"
}
}

View File

@@ -0,0 +1,60 @@
{
"descriptor": {
"name": "Dash.",
"description": "A module for displaying the graphs of your running Dash. instance.",
"settings": {
"cpuMultiView": {
"label": "CPU Multi-Core View"
},
"storageMultiView": {
"label": "Storage Multi-Drive View"
},
"useCompactView": {
"label": "Use Compact View"
},
"graphs": {
"label": "Graphs",
"options": {
"cpu": "CPU",
"ram": "RAM",
"storage": "Storage",
"network": "Network",
"gpu": "GPU"
}
},
"url": {
"label": "Dash. URL"
}
}
},
"card": {
"title": "Dash.",
"errors": {
"noService": "Kein Dash. Service gefunden. Bitte füge einen zu deinem Homarr Dashboard hinzu oder setze eine Dash. URL in den Modul-Optionen.",
"noInformation": "Informationen konnten nicht von Dash. geladen werden. Betriebst du die neuste Version?"
},
"graphs": {
"storage": {
"title": "Speicher",
"label": "Speicher:"
},
"network": {
"title": "Netzwerk",
"label": "Netzwerk:",
"metrics": {
"download": "Eingehend",
"upload": "Ausgehend"
}
},
"cpu": {
"title": "CPU"
},
"memory": {
"title": "RAM"
},
"gpu": {
"title": "GPU"
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Date",
"description": "Show the current time and date in a card",
"settings": {
"display24HourFormat": {
"label": "Display full time (24-hour)"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"descriptor": {
"name": "Download Speed",
"description": "Show the current download speed of supported services"
}
}

View File

@@ -0,0 +1,65 @@
{
"search": {
"placeholder": "Suche nach Conainer oder Image Namen"
},
"table": {
"header": {
"name": "Name",
"image": "Image",
"ports": "Ports",
"state": "Status"
},
"body": {
"portCollapse": "{{ports}} weitere"
},
"states": {
"running": "Läuft",
"created": "Erstellt",
"stopped": "Gestopped",
"unknown": "Unbekannt"
}
},
"actionBar": {
"addService": {
"title": "Service hinzufügen",
"message": "Service zu Homarr hinzufügen"
},
"restart": {
"title": "Neustarten"
},
"stop": {
"title": "Stoppen"
},
"start": {
"title": "Starten"
},
"refreshData": "Daten aktualisieren",
"addToHomarr": {
"title": "Zu Homarr hinzufügen"
},
"remove": {
"title": "Entfernen"
}
},
"messages": {
"successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed",
"message": "Your container was successfully {{action}}ed"
}
},
"errors": {
"integrationFailed": {
"title": "Docker Integration schlug fehl",
"message": "Hast du vergessen, den Docker Socket zu verbinden?"
},
"unknownError": {
"title": "Es ist ein Fehler aufgetreten"
},
"oneServiceAtATime": {
"title": "Bitte füge nur einen Service zur Zeit hinzu."
}
},
"actionIcon": {
"tooltip": "Docker"
}
}

View File

@@ -0,0 +1,69 @@
{
"descriptor": {
"name": "Docker",
"description": "Allows you to easily manage your torrents"
},
"search": {
"placeholder": "Suche nach Conainer oder Image Namen"
},
"table": {
"header": {
"name": "Name",
"image": "Image",
"ports": "Ports",
"state": "Status"
},
"body": {
"portCollapse": "{{ports}} weitere"
},
"states": {
"running": "Läuft",
"created": "Erstellt",
"stopped": "Gestopped",
"unknown": "Unbekannt"
}
},
"actionBar": {
"addService": {
"title": "Service hinzufügen",
"message": "Service zu Homarr hinzufügen"
},
"restart": {
"title": "Neustarten"
},
"stop": {
"title": "Stoppen"
},
"start": {
"title": "Starten"
},
"refreshData": "Daten aktualisieren",
"addToHomarr": {
"title": "Zu Homarr hinzufügen"
},
"remove": {
"title": "Entfernen"
}
},
"messages": {
"successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed",
"message": "Your container was successfully {{action}}ed"
}
},
"errors": {
"integrationFailed": {
"title": "Docker Integration schlug fehl",
"message": "Hast du vergessen, den Docker Socket zu verbinden?"
},
"unknownError": {
"title": "Es ist ein Fehler aufgetreten"
},
"oneServiceAtATime": {
"title": "Bitte füge nur einen Service zur Zeit hinzu."
}
},
"actionIcon": {
"tooltip": "Docker"
}
}

View File

@@ -0,0 +1,30 @@
{
"descriptor": {
"name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr"
},
"popup": {
"item": {
"buttons": {
"askFor": "Fragen für {{title}}",
"cancel": "Abbrechen",
"request": "Anfragen"
},
"alerts": {
"automaticApproval": {
"title": "Einen API Schlüssel benutzen",
"text": "Diese Anfrage wird automatisch genehmigt"
}
}
},
"seasonSelector": {
"caption": "Kreuze die Staffeln an, die heruntergeladen werden sollen.",
"table": {
"header": {
"season": "Staffel",
"numberOfEpisodes": "Anzahl von Episoden"
}
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Ping Services",
"description": "Pings your services and shows their status as an indicator"
},
"states": {
"online": "Online {{response}}",
"offline": "Offline {{response}}",
"loading": "Laden..."
}
}

View File

@@ -0,0 +1,9 @@
{
"descriptor": {
"name": "Search Bar",
"description": "Search bar to search the web, youtube, torrents or overseerr"
},
"input": {
"placeholder": "Das Internet durchsuchen..."
}
}

View File

@@ -0,0 +1,40 @@
{
"descriptor": {
"name": "Torrent",
"description": "Show the current download speed of supported services",
"settings": {
"hideComplete": {
"label": "Hide completed torrents"
}
}
},
"card": {
"table": {
"header": {
"name": "Name",
"size": "Grösse",
"download": "Eingehend",
"upload": "Ausgehend",
"estimatedTimeOfArrival": "Vorraussichtlicher Abschluss",
"progress": "Fortschritt"
},
"body": {
"nothingFound": "Keine Torrents gefunden"
}
},
"lineChart": {
"title": "Derzeitige Download Geschwindigkeit",
"download": "Download: {{download}}",
"upload": "Upload: {{upload}}",
"timeSpan": "{{seconds}} Sekunden zuvor",
"totalDownload": "Download: {{download}}/s",
"totalUpload": "Upload: {{upload}}/s"
},
"errors": {
"noDownloadClients": {
"title": "Keine unterstützten Download Clients gefunden",
"text": "Füge einen Download Service hinzu, um deine derzeitigen Downloads zu sehen"
}
}
}
}

View File

@@ -0,0 +1,32 @@
{
"descriptor": {
"name": "Weather",
"description": "Look up the current weather in your location",
"settings": {
"displayInFahrenheit": {
"label": "Display in Fahrenheit"
},
"location": {
"label": "Weather location"
}
}
},
"card": {
"weatherDescriptions": {
"clear": "Klar",
"mainlyClear": "Überwiegend klar",
"fog": "Nebel",
"drizzle": "Niesel",
"freezingDrizzle": "Eisiger Nieselregen",
"rain": "Regen",
"freezingRain": "Eisiger Regen",
"snowFall": "Schneefall",
"snowGrains": "Schneekörner",
"rainShowers": "Regenschauer",
"snowShowers": "Schneeschauer",
"thunderstorm": "Gewitter",
"thunderstormWithHail": "Gewitter mit Hagel",
"unknown": "Unbekannt"
}
}
}

View File

@@ -0,0 +1,14 @@
{
"title": "Settings",
"tooltip": "Settings",
"tabs": {
"common": "Common",
"customizations": "Customizations"
},
"tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!"
},
"credits": {
"madeWithLove": "Made with ❤️ by @"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Applikations Breite"
}

View File

@@ -0,0 +1,3 @@
{
"suffix": "{{color}} Farbe"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Applikation Deckkraft"
}

View File

@@ -0,0 +1,21 @@
{
"pageTitle": {
"label": "Seiten Titel",
"placeholder": "Homarr 🦞"
},
"logo": {
"label": "Logo",
"placeholder": "/img/logo.png"
},
"favicon": {
"label": "Favicon",
"placeholder": "/favicon.png"
},
"background": {
"label": "Hintergrund",
"placeholder": "/img/background.png"
},
"buttons": {
"submit": "Absenden"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Shatten"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Wechseln zu {{scheme}} Modus"
}

View File

@@ -0,0 +1,55 @@
{
"configSelect": {
"label": "Konfigurations Lader"
},
"modal": {
"title": "Wähle einen Namen für deine neue Konfiguration",
"form": {
"configName": {
"label": "Konfigurations Name",
"placeholder": "Dein neuer Konfigurtionsname"
},
"submitButton": "Bestätigen"
},
"events": {
"configSaved": {
"title": "Konfiguration gespeichert",
"message": "Konfiguration gespeichert als {{configName}}"
}
}
},
"buttons": {
"download": "Konfiguration herunterladen",
"delete": {
"text": "Konfiguration löschen",
"notifications": {
"deleted": {
"title": "Konfiguration gelöscht",
"message": "Konfiguration wurde gelöscht"
},
"deleteFailed": {
"title": "Config delete failed",
"message": "Config delete failed"
}
}
},
"saveCopy": "Eine Kopie speichern"
},
"dropzone": {
"notifications": {
"invalidConfig": {
"title": "Konfiguration konnte nicht geladen werden",
"message": "Konfiguration konnte nicht geladen werden. Invalides JSON"
},
"loadedSuccessfully": {
"title": "Konfiguration {{configName}} wurde erfolgreich geladen"
}
},
"accept": {
"text": "Ziehe Konfigurationen hier um sie hochzuladen. Es werden nur JSON Dateien unterstützt."
},
"reject": {
"text": "Dieses Dateiformat wird nicht unterstützt. Bitte lade nur JSON hoch."
}
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Sprache"
}

View File

@@ -0,0 +1,3 @@
{
"title": "Modul-Enabler"
}

View File

@@ -0,0 +1,11 @@
{
"title": "Suchmaschine",
"tips": {
"generalTip": "Verwenden die Präfixe !yt und !t vor deiner Suchanfrage, um auf YouTube bzw. nach einem Torrent zu suchen.",
"placeholderTip": "%s kann als Platzhalter für deine Suchanfrage verwendet werden."
},
"customEngine": {
"label": "Suchanfrage URL",
"placeholder": "Benutzerdefinierte Adresse"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Wechsel zu {{theme}} Modus"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Widgets auf der linken Seite"
}

View File

@@ -0,0 +1,6 @@
{
"actions": {
"save": "Save"
},
"tip": "Tip: "
}

View File

@@ -0,0 +1,118 @@
{
"actionIcon": {
"tooltip": "Add a service"
},
"modal": {
"title": "Add service",
"form": {
"validation": {
"invalidUrl": "Please enter a valid URL",
"noStatusCodeSelected": "Please select a status code"
}
},
"tabs": {
"options": {
"title": "Options",
"form": {
"serviceName": {
"label": "Service name",
"placeholder": "Plex"
},
"iconUrl": {
"label": "Icon URL"
},
"serviceUrl": {
"label": "Service URL"
},
"onClickUrl": {
"label": "On Click URL"
},
"serviceType": {
"label": "Service type",
"defaultValue": "Other",
"placeholder": "Pick one"
},
"category": {
"label": "Category",
"placeholder": "Select a category or create a new one",
"nothingFound": "Nothing found",
"createLabel": "+ Create {{query}}"
},
"integrations": {
"apiKey": {
"label": "API key",
"placeholder": "Your API key",
"validation": {
"noKey": "Invalid Key"
},
"tip": {
"text": "Get your API key",
"link": "here."
}
},
"qBittorrent": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"deluge": {
"password": {
"label": "Password",
"placeholder": "password",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"transmission": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
}
}
}
},
"advancedOptions": {
"title": "Advanced options",
"form": {
"httpStatusCodes": {
"label": "HTTP Status Codes",
"placeholder": "Select valid status codes",
"clearButtonLabel": "Clear selection",
"nothingFound": "Nothing found"
},
"openServiceInNewTab": {
"label": "Open service in new tab"
},
"buttons": {
"submit": {
"content": "Add service"
}
}
}
}
}
}
}

View File

@@ -0,0 +1,18 @@
{
"modal": {
"title": "Modify a service",
"buttons": {
"save": "Save service"
}
},
"menu": {
"labels": {
"settings": "Settings",
"dangerZone": "Danger zone"
},
"actions": {
"edit": "Edit",
"delete": "Delete"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"accordions": {
"downloads": {
"text": "Your downloads"
},
"others": {
"text": "Others"
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Calendar",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.",
"settings": {
"sundayStart": {
"label": "Start the week on Sunday"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"buttons": {
"play": "Play",
"request": "Request"
}
}

View File

@@ -0,0 +1,5 @@
{
"settings": {
"label": "Settings"
}
}

View File

@@ -0,0 +1,60 @@
{
"descriptor": {
"name": "Dash.",
"description": "A module for displaying the graphs of your running Dash. instance.",
"settings": {
"cpuMultiView": {
"label": "CPU Multi-Core View"
},
"storageMultiView": {
"label": "Storage Multi-Drive View"
},
"useCompactView": {
"label": "Use Compact View"
},
"graphs": {
"label": "Graphs",
"options": {
"cpu": "CPU",
"ram": "RAM",
"storage": "Storage",
"network": "Network",
"gpu": "GPU"
}
},
"url": {
"label": "Dash. URL"
}
}
},
"card": {
"title": "Dash.",
"errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?"
},
"graphs": {
"storage": {
"title": "Storage",
"label": "Storage:"
},
"network": {
"title": "Network",
"label": "Network:",
"metrics": {
"download": "Down",
"upload": "Up"
}
},
"cpu": {
"title": "CPU"
},
"memory": {
"title": "RAM"
},
"gpu": {
"title": "GPU"
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Date",
"description": "Show the current time and date in a card",
"settings": {
"display24HourFormat": {
"label": "Display full time (24-hour)"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"descriptor": {
"name": "Download Speed",
"description": "Show the current download speed of supported services"
}
}

View File

@@ -0,0 +1,69 @@
{
"descriptor": {
"name": "Docker",
"description": "Allows you to easily manage your torrents"
},
"search": {
"placeholder": "Search by container or image name"
},
"table": {
"header": {
"name": "Name",
"image": "Image",
"ports": "Ports",
"state": "State"
},
"body": {
"portCollapse": "{{ports}} more"
},
"states": {
"running": "Running",
"created": "Created",
"stopped": "Stopped",
"unknown": "Unknown"
}
},
"actionBar": {
"addService": {
"title": "Add service",
"message": "Add service to Homarr"
},
"restart": {
"title": "Restart"
},
"stop": {
"title": "Stop"
},
"start": {
"title": "Start"
},
"refreshData": "Refresh data",
"addToHomarr": {
"title": "Add to Homarr"
},
"remove": {
"title": "Remove"
}
},
"messages": {
"successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed",
"message": "Your container was successfully {{action}}ed"
}
},
"errors": {
"integrationFailed": {
"title": "Docker integration failed",
"message": "Did you forget to mount the docker socket ?"
},
"unknownError": {
"title": "There was an error"
},
"oneServiceAtATime": {
"title": "Please only add one service at a time!"
}
},
"actionIcon": {
"tooltip": "Docker"
}
}

View File

@@ -0,0 +1,30 @@
{
"descriptor": {
"name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr"
},
"popup": {
"item": {
"buttons": {
"askFor": "Ask for {{title}}",
"cancel": "Cancel",
"request": "Request"
},
"alerts": {
"automaticApproval": {
"title": "Using API key",
"text": "This request will be automatically approved"
}
}
},
"seasonSelector": {
"caption": "Tick the seasons that you want to be downloaded",
"table": {
"header": {
"season": "Season",
"numberOfEpisodes": "Number of episodes"
}
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Ping",
"description": "Allows you to check if the service is up or returns a specific HTTP status code."
},
"states": {
"online": "Online {{response}}",
"offline": "Offline {{response}}",
"loading": "Loading..."
}
}

View File

@@ -0,0 +1,9 @@
{
"descriptor": {
"name": "Search Bar",
"description": "Search bar to search the web, youtube, torrents or overseerr"
},
"input": {
"placeholder": "Search the web..."
}
}

View File

@@ -0,0 +1,40 @@
{
"descriptor": {
"name": "Torrent",
"description": "Show the current download speed of supported services",
"settings": {
"hideComplete": {
"label": "Hide completed torrents"
}
}
},
"card": {
"table": {
"header": {
"name": "Name",
"size": "Size",
"download": "Down",
"upload": "Up",
"estimatedTimeOfArrival": "ETA",
"progress": "Progress"
},
"body": {
"nothingFound": "No torrents found"
}
},
"lineChart": {
"title": "Current download speed",
"download": "Download: {{download}}",
"upload": "Upload: {{upload}}",
"timeSpan": "{{seconds}} seconds ago",
"totalDownload": "Download: {{download}}/s",
"totalUpload": "Upload: {{upload}}/s"
},
"errors": {
"noDownloadClients": {
"title": "No supported download clients found!",
"text": "Add a download service to view your current downloads"
}
}
}
}

View File

@@ -0,0 +1,32 @@
{
"descriptor": {
"name": "Weather",
"description": "Look up the current weather in your location",
"settings": {
"displayInFahrenheit": {
"label": "Display in Fahrenheit"
},
"location": {
"label": "Weather location"
}
}
},
"card": {
"weatherDescriptions": {
"clear": "Clear",
"mainlyClear": "Mainly clear",
"fog": "Fog",
"drizzle": "Drizzle",
"freezingDrizzle": "Freezing drizzle",
"rain": "Rain",
"freezingRain": "Freezing rain",
"snowFall": "Snow fall",
"snowGrains": "Snow grains",
"rainShowers": "Rain showers",
"snowShowers": "Snow showers",
"thunderstorm": "Thunderstorm",
"thunderstormWithHail": "Thunderstorm with hail",
"unknown": "Unknown"
}
}
}

View File

@@ -0,0 +1,14 @@
{
"title": "Settings",
"tooltip": "Settings",
"tabs": {
"common": "Common",
"customizations": "Customizations"
},
"tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!"
},
"credits": {
"madeWithLove": "Made with ❤️ by @"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "App Width"
}

View File

@@ -0,0 +1,3 @@
{
"suffix": "{{color}} color"
}

View File

@@ -0,0 +1,3 @@
{
"label": "App Opacity"
}

View File

@@ -0,0 +1,21 @@
{
"pageTitle": {
"label": "Page Title",
"placeholder": "Homarr 🦞"
},
"logo": {
"label": "Logo",
"placeholder": "/img/logo.png"
},
"favicon": {
"label": "Favicon",
"placeholder": "/favicon.png"
},
"background": {
"label": "Background",
"placeholder": "/img/background.png"
},
"buttons": {
"submit": "Submit"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Shade"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Switch to {{scheme}} mode"
}

View File

@@ -0,0 +1,55 @@
{
"configSelect": {
"label": "Config loader"
},
"modal": {
"title": "Choose the name of your new config",
"form": {
"configName": {
"label": "Config name",
"placeholder": "Your new config name"
},
"submitButton": "Confirm"
},
"events": {
"configSaved": {
"title": "Config saved",
"message": "Config saved as {{configName}}"
}
}
},
"buttons": {
"download": "Download config",
"delete": {
"text": "Delete config",
"notifications": {
"deleted": {
"title": "Config deleted",
"message": "Config deleted"
},
"deleteFailed": {
"title": "Config delete failed",
"message": "Config delete failed"
}
}
},
"saveCopy": "Save a copy"
},
"dropzone": {
"notifications": {
"invalidConfig": {
"title": "Unable to load config",
"message": "Could not load your config. Invalid JSON format."
},
"loadedSuccessfully": {
"title": "Config {{configName}} loaded successfully"
}
},
"accept": {
"text": "Drag files here to upload a config. Support for JSON only."
},
"reject": {
"text": "This file format is not supported. Please only upload JSON."
}
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Language"
}

View File

@@ -0,0 +1,3 @@
{
"title": "Module enabler"
}

View File

@@ -0,0 +1,11 @@
{
"title": "Search engine",
"tips": {
"generalTip": "Use the prefixes !yt and !t in front of your query to search on YouTube or for a Torrent respectively.",
"placeholderTip": "%s can be used as a placeholder for the query."
},
"customEngine": {
"label": "Query URL",
"placeholder": "Custom query URL"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Switch to {{theme}} mode"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Position widgets on left"
}

View File

@@ -0,0 +1,6 @@
{
"actions": {
"save": "Save"
},
"tip": "Tip: "
}

View File

@@ -0,0 +1,118 @@
{
"actionIcon": {
"tooltip": "Add a service"
},
"modal": {
"title": "Add service",
"form": {
"validation": {
"invalidUrl": "Please enter a valid URL",
"noStatusCodeSelected": "Please select a status code"
}
},
"tabs": {
"options": {
"title": "Options",
"form": {
"serviceName": {
"label": "Service name",
"placeholder": "Plex"
},
"iconUrl": {
"label": "Icon URL"
},
"serviceUrl": {
"label": "Service URL"
},
"onClickUrl": {
"label": "On Click URL"
},
"serviceType": {
"label": "Service type",
"defaultValue": "Other",
"placeholder": "Pick one"
},
"category": {
"label": "Category",
"placeholder": "Select a category or create a new one",
"nothingFound": "Nothing found",
"createLabel": "+ Create {{query}}"
},
"integrations": {
"apiKey": {
"label": "API key",
"placeholder": "Your API key",
"validation": {
"noKey": "Invalid Key"
},
"tip": {
"text": "Get your API key",
"link": "here."
}
},
"qBittorrent": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"deluge": {
"password": {
"label": "Password",
"placeholder": "password",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"transmission": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
}
}
}
},
"advancedOptions": {
"title": "Advanced options",
"form": {
"httpStatusCodes": {
"label": "HTTP Status Codes",
"placeholder": "Select valid status codes",
"clearButtonLabel": "Clear selection",
"nothingFound": "Nothing found"
},
"openServiceInNewTab": {
"label": "Open service in new tab"
},
"buttons": {
"submit": {
"content": "Add service"
}
}
}
}
}
}
}

View File

@@ -0,0 +1,18 @@
{
"modal": {
"title": "Modify a service",
"buttons": {
"save": "Save service"
}
},
"menu": {
"labels": {
"settings": "Settings",
"dangerZone": "Danger zone"
},
"actions": {
"edit": "Edit",
"delete": "Delete"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"accordions": {
"downloads": {
"text": "Your downloads"
},
"others": {
"text": "Others"
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Calendar",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.",
"settings": {
"sundayStart": {
"label": "Start the week on Sunday"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"buttons": {
"play": "Play",
"request": "Request"
}
}

View File

@@ -0,0 +1,5 @@
{
"settings": {
"label": "Settings"
}
}

View File

@@ -0,0 +1,60 @@
{
"descriptor": {
"name": "Dash.",
"description": "A module for displaying the graphs of your running Dash. instance.",
"settings": {
"cpuMultiView": {
"label": "CPU Multi-Core View"
},
"storageMultiView": {
"label": "Storage Multi-Drive View"
},
"useCompactView": {
"label": "Use Compact View"
},
"graphs": {
"label": "Graphs",
"options": {
"cpu": "CPU",
"ram": "RAM",
"storage": "Storage",
"network": "Network",
"gpu": "GPU"
}
},
"url": {
"label": "Dash. URL"
}
}
},
"card": {
"title": "Dash.",
"errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?"
},
"graphs": {
"storage": {
"title": "Storage",
"label": "Storage:"
},
"network": {
"title": "Network",
"label": "Network:",
"metrics": {
"download": "Down",
"upload": "Up"
}
},
"cpu": {
"title": "CPU"
},
"memory": {
"title": "RAM"
},
"gpu": {
"title": "GPU"
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Date",
"description": "Show the current time and date in a card",
"settings": {
"display24HourFormat": {
"label": "Display full time (24-hour)"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"descriptor": {
"name": "Download Speed",
"description": "Show the current download speed of supported services"
}
}

View File

@@ -0,0 +1,69 @@
{
"descriptor": {
"name": "Docker",
"description": "Allows you to easily manage your torrents"
},
"search": {
"placeholder": "Search by container or image name"
},
"table": {
"header": {
"name": "Name",
"image": "Image",
"ports": "Ports",
"state": "State"
},
"body": {
"portCollapse": "{{ports}} more"
},
"states": {
"running": "Running",
"created": "Created",
"stopped": "Stopped",
"unknown": "Unknown"
}
},
"actionBar": {
"addService": {
"title": "Add service",
"message": "Add service to Homarr"
},
"restart": {
"title": "Restart"
},
"stop": {
"title": "Stop"
},
"start": {
"title": "Start"
},
"refreshData": "Refresh data",
"addToHomarr": {
"title": "Add to Homarr"
},
"remove": {
"title": "Remove"
}
},
"messages": {
"successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed",
"message": "Your container was successfully {{action}}ed"
}
},
"errors": {
"integrationFailed": {
"title": "Docker integration failed",
"message": "Did you forget to mount the docker socket ?"
},
"unknownError": {
"title": "There was an error"
},
"oneServiceAtATime": {
"title": "Please only add one service at a time!"
}
},
"actionIcon": {
"tooltip": "Docker"
}
}

View File

@@ -0,0 +1,30 @@
{
"descriptor": {
"name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr"
},
"popup": {
"item": {
"buttons": {
"askFor": "Ask for {{title}}",
"cancel": "Cancel",
"request": "Request"
},
"alerts": {
"automaticApproval": {
"title": "Using API key",
"text": "This request will be automatically approved"
}
}
},
"seasonSelector": {
"caption": "Tick the seasons that you want to be downloaded",
"table": {
"header": {
"season": "Season",
"numberOfEpisodes": "Number of episodes"
}
}
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Ping",
"description": "Allows you to check if the service is up or returns a specific HTTP status code."
},
"states": {
"online": "Online {{response}}",
"offline": "Offline {{response}}",
"loading": "Loading..."
}
}

View File

@@ -0,0 +1,9 @@
{
"descriptor": {
"name": "Search Bar",
"description": "Search bar to search the web, youtube, torrents or overseerr"
},
"input": {
"placeholder": "Search the web..."
}
}

View File

@@ -0,0 +1,40 @@
{
"descriptor": {
"name": "Torrent",
"description": "Show the current download speed of supported services",
"settings": {
"hideComplete": {
"label": "Hide completed torrents"
}
}
},
"card": {
"table": {
"header": {
"name": "Name",
"size": "Size",
"download": "Down",
"upload": "Up",
"estimatedTimeOfArrival": "ETA",
"progress": "Progress"
},
"body": {
"nothingFound": "No torrents found"
}
},
"lineChart": {
"title": "Current download speed",
"download": "Download: {{download}}",
"upload": "Upload: {{upload}}",
"timeSpan": "{{seconds}} seconds ago",
"totalDownload": "Download: {{download}}/s",
"totalUpload": "Upload: {{upload}}/s"
},
"errors": {
"noDownloadClients": {
"title": "No supported download clients found!",
"text": "Add a download service to view your current downloads"
}
}
}
}

View File

@@ -0,0 +1,32 @@
{
"descriptor": {
"name": "Weather",
"description": "Look up the current weather in your location",
"settings": {
"displayInFahrenheit": {
"label": "Display in Fahrenheit"
},
"location": {
"label": "Weather location"
}
}
},
"card": {
"weatherDescriptions": {
"clear": "Clear",
"mainlyClear": "Mainly clear",
"fog": "Fog",
"drizzle": "Drizzle",
"freezingDrizzle": "Freezing drizzle",
"rain": "Rain",
"freezingRain": "Freezing rain",
"snowFall": "Snow fall",
"snowGrains": "Snow grains",
"rainShowers": "Rain showers",
"snowShowers": "Snow showers",
"thunderstorm": "Thunderstorm",
"thunderstormWithHail": "Thunderstorm with hail",
"unknown": "Unknown"
}
}
}

View File

@@ -0,0 +1,14 @@
{
"title": "Settings",
"tooltip": "Settings",
"tabs": {
"common": "Common",
"customizations": "Customizations"
},
"tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!"
},
"credits": {
"madeWithLove": "Made with ❤️ by @"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "App Width"
}

View File

@@ -0,0 +1,3 @@
{
"suffix": "{{color}} color"
}

View File

@@ -0,0 +1,3 @@
{
"label": "App Opacity"
}

View File

@@ -0,0 +1,21 @@
{
"pageTitle": {
"label": "Page Title",
"placeholder": "Homarr 🦞"
},
"logo": {
"label": "Logo",
"placeholder": "/img/logo.png"
},
"favicon": {
"label": "Favicon",
"placeholder": "/favicon.png"
},
"background": {
"label": "Background",
"placeholder": "/img/background.png"
},
"buttons": {
"submit": "Submit"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Shade"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Switch to {{scheme}} mode"
}

View File

@@ -0,0 +1,55 @@
{
"configSelect": {
"label": "Config loader"
},
"modal": {
"title": "Choose the name of your new config",
"form": {
"configName": {
"label": "Config name",
"placeholder": "Your new config name"
},
"submitButton": "Confirm"
},
"events": {
"configSaved": {
"title": "Config saved",
"message": "Config saved as {{configName}}"
}
}
},
"buttons": {
"download": "Download config",
"delete": {
"text": "Delete config",
"notifications": {
"deleted": {
"title": "Config deleted",
"message": "Config deleted"
},
"deleteFailed": {
"title": "Config delete failed",
"message": "Config delete failed"
}
}
},
"saveCopy": "Save a copy"
},
"dropzone": {
"notifications": {
"invalidConfig": {
"title": "Unable to load config",
"message": "Could not load your config. Invalid JSON format."
},
"loadedSuccessfully": {
"title": "Config {{configName}} loaded successfully"
}
},
"accept": {
"text": "Drag files here to upload a config. Support for JSON only."
},
"reject": {
"text": "This file format is not supported. Please only upload JSON."
}
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Language"
}

View File

@@ -0,0 +1,3 @@
{
"title": "Module enabler"
}

View File

@@ -0,0 +1,11 @@
{
"title": "Search engine",
"tips": {
"generalTip": "Use the prefixes !yt and !t in front of your query to search on YouTube or for a Torrent respectively.",
"placeholderTip": "%s can be used as a placeholder for the query."
},
"customEngine": {
"label": "Query URL",
"placeholder": "Custom query URL"
}
}

View File

@@ -0,0 +1,3 @@
{
"label": "Switch to {{theme}} mode"
}

View File

@@ -0,0 +1,3 @@
{
"label": "Position widgets on left"
}

View File

@@ -0,0 +1,6 @@
{
"actions": {
"save": "Save"
},
"tip": "Tip: "
}

View File

@@ -0,0 +1,118 @@
{
"actionIcon": {
"tooltip": "Add a service"
},
"modal": {
"title": "Add service",
"form": {
"validation": {
"invalidUrl": "Please enter a valid URL",
"noStatusCodeSelected": "Please select a status code"
}
},
"tabs": {
"options": {
"title": "Options",
"form": {
"serviceName": {
"label": "Service name",
"placeholder": "Plex"
},
"iconUrl": {
"label": "Icon URL"
},
"serviceUrl": {
"label": "Service URL"
},
"onClickUrl": {
"label": "On Click URL"
},
"serviceType": {
"label": "Service type",
"defaultValue": "Other",
"placeholder": "Pick one"
},
"category": {
"label": "Category",
"placeholder": "Select a category or create a new one",
"nothingFound": "Nothing found",
"createLabel": "+ Create {{query}}"
},
"integrations": {
"apiKey": {
"label": "API key",
"placeholder": "Your API key",
"validation": {
"noKey": "Invalid Key"
},
"tip": {
"text": "Get your API key",
"link": "here."
}
},
"qBittorrent": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"deluge": {
"password": {
"label": "Password",
"placeholder": "password",
"validation": {
"invalidPassword": "Invalid password"
}
}
},
"transmission": {
"username": {
"label": "Username",
"placeholder": "admin",
"validation": {
"invalidUsername": "Invalid username"
}
},
"password": {
"label": "Password",
"placeholder": "adminadmin",
"validation": {
"invalidPassword": "Invalid password"
}
}
}
}
}
},
"advancedOptions": {
"title": "Advanced options",
"form": {
"httpStatusCodes": {
"label": "HTTP Status Codes",
"placeholder": "Select valid status codes",
"clearButtonLabel": "Clear selection",
"nothingFound": "Nothing found"
},
"openServiceInNewTab": {
"label": "Open service in new tab"
},
"buttons": {
"submit": {
"content": "Add service"
}
}
}
}
}
}
}

View File

@@ -0,0 +1,18 @@
{
"modal": {
"title": "Modify a service",
"buttons": {
"save": "Save service"
}
},
"menu": {
"labels": {
"settings": "Settings",
"dangerZone": "Danger zone"
},
"actions": {
"edit": "Edit",
"delete": "Delete"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"accordions": {
"downloads": {
"text": "Your downloads"
},
"others": {
"text": "Others"
}
}
}

View File

@@ -0,0 +1,11 @@
{
"descriptor": {
"name": "Calendar",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.",
"settings": {
"sundayStart": {
"label": "Start the week on Sunday"
}
}
}
}

View File

@@ -0,0 +1,6 @@
{
"buttons": {
"play": "Play",
"request": "Request"
}
}

View File

@@ -0,0 +1,5 @@
{
"settings": {
"label": "Settings"
}
}

Some files were not shown because too many files have changed in this diff Show More