{ "app": { "name": "toolr", "tagline": "Tool-Bewertungsplattform" }, "nav": { "home": "Home", "browseTools": "Browse Tools", "addTool": "Add Tool", "analytics": "Analytics", "watchlist": "Watchlist", "trash": "Trash", "admin": "Admin", "redundancy": "Redundancy", "docs": "Help", "search": "Search tools…" }, "auth": { "signIn": "Sign in", "signInKeycloak": "Sign in with Keycloak", "signOut": "Sign out", "username": "Username", "password": "Password", "login": "Login", "invalidCredentials": "Invalid username or password", "notAuthenticated": "Not authenticated", "loginSubtitle": "Sign in to your account", "loginDescription": "Enter your credentials to continue", "changePassword": "Change password", "currentPassword": "Current password", "newPassword": "New password", "confirmPassword": "Confirm password", "passwordMinLength": "min. 6 characters", "pwMismatch": "Passwords do not match", "pwTooShort": "Password must be at least 8 characters", "pwChanged": "Password changed", "pwChangeFailed": "Could not change password", "oidcPasswordHint": "Your password is managed by the identity provider (Keycloak).", "manageInIdp": "Manage in Keycloak" }, "common": { "cancel": "Cancel", "save": "Save", "delete": "Delete", "edit": "Edit", "clear": "Clear", "clearAll": "Clear all", "search": "Search", "add": "Add", "back": "Back", "backToTools": "Back to tools", "browseTools": "Browse tools", "viewAll": "View all", "loading": "Loading…", "all": "All", "none": "None", "language": "Language", "viewDetails": "View details", "guideTooltip": "Guide in the documentation", "help": "Help", "viewMode": "View mode", "viewGrid": "Grid", "viewTable": "Table", "viewRows": "Rows", "listDensity": "List density", "densityCompact": "Compact", "densityComfortable": "Comfortable", "densityTitle": "Density: {{density}}" }, "home": { "welcome": "Welcome to toolr", "tagline": "Rate your Tool.", "totalTools": "Total Tools", "totalRatings": "Total Ratings", "avgRating": "Avg Rating", "topRated": "Top Rated Tools", "topRatedSub": "Highest combined usefulness and usability.", "recentlyAdded": "Recently Added", "recentlyAddedSub": "The latest additions to the catalog.", "noRatingsYet": "No ratings yet", "noRatingsSub": "Be the first to rate a tool and help the community.", "noTools": "No tools found", "noToolsSub": "There are no tools in the database yet." }, "browse": { "filters": "Filters", "subtitle": "Discover and evaluate the best tools for your stack.", "allCategories": "All Categories", "showingTool_one": "Showing {{count}} tool", "showingTool_other": "Showing {{count}} tools", "tool": "Tool", "category": "Category", "rating": "Rating", "reviews": "Reviews", "reviewCount_one": "{{count}} review", "reviewCount_other": "{{count}} reviews", "noToolsFound": "No tools found", "noToolsMatch": "We couldn't find any tools matching your current filters. Try adjusting your search criteria or add a new tool.", "addTool": "Add Tool", "compare": "Compare", "compareCount": "Compare ({{count}})", "addToCompare": "Add to compare", "removeFromCompare": "Remove from compare", "compareLimitReached": "A maximum of 9 tools can be compared.", "comparePremiumTitle": "Compare is a Premium feature", "comparePremiumSub": "Comparing tools side-by-side is available to Premium and Enterprise users. Upgrade your plan to unlock it.", "notNow": "Not now", "upgradePremium": "Upgrade to Premium", "sortNewest": "Newest", "sortTopRated": "Top Rated", "sortMostReviewed": "Most Reviewed", "sortNameAsc": "Name (A–Z)", "sortNameDesc": "Name (Z–A)", "sortRecentlyUpdated": "Recently Updated" }, "filter": { "tags": "Tags", "features": "Features", "minRating": "Min. rating", "any": "Any", "clearFilters": "Clear filters", "removeFeature": "Remove feature: {{feature}}", "removeMinRating": "Remove min rating" }, "detail": { "ratingBreakdown": "Rating Breakdown", "usefulness": "Usefulness", "usability": "Usability", "scoreDistribution": "Score Distribution", "scoreTrend": "Score Trend", "notEnoughRatings": "Not enough ratings yet to show a trend.", "reviews": "Reviews", "basedOnReview_one": "Based on {{count}} review", "basedOnReview_other": "Based on {{count}} reviews", "saveToWatchlist": "Save to watchlist", "savedToWatchlist": "Saved to watchlist", "removeFromWatchlist": "Remove from watchlist", "visitWebsite": "Visit Website", "edit": "Edit", "delete": "Delete", "noReviews": "No reviews yet.", "addReview": "Add Review", "yourRating": "Your Rating", "submit": "Submit Rating", "relatedTools": "Related Tools", "costs": "Costs", "addCost": "Add Cost", "recentRatings": "Recent Ratings", "deleteConfirmTitle": "Delete this tool?", "deleteToTrash": "This will move {{name}} to the trash. It can be restored later.", "deletePermanent": "This will permanently remove {{name}} and all its ratings. This cannot be undone.", "deleting": "Deleting…", "deleteAction": "Delete", "invalidToolId": "Invalid Tool ID", "backToBrowse": "Back to browse", "keyFeatures": "Key Features", "toolNotFound": "Tool not found.", "similarTools": "Similar Tools", "noSimilarTools": "No similar tools found.", "linkTool": "Link Tool", "linkSimilarTool": "Link Similar Tool", "linkSimilarToolSub": "Manually link this tool to another tool.", "toolId": "Tool ID", "toolIdPlaceholder": "Enter target tool ID", "relationType": "Relation Type", "relationSimilar": "Similar", "relationReplaces": "Replaces", "relationSupersededBy": "Superseded By", "notesOptional": "Notes (Optional)", "notesPlaceholder": "Why are these tools related?", "createLink": "Create Link", "noCostInfo": "No cost information added yet.", "costDialogSub": "Manage license cost information for this tool.", "licenseType": "License Type", "licenseFree": "Free", "licenseSubscription": "Subscription", "licenseOneTime": "One-Time", "licenseUsageBased": "Usage-Based", "billingPeriod": "Billing Period", "billingMonthly": "Monthly", "billingQuarterly": "Quarterly", "billingYearly": "Yearly", "costLabel": "Cost", "currency": "Currency", "costNotes": "Notes", "costNotesPlaceholder": "Billing details, contract info...", "commentOptional": "Comment (Optional)", "commentLabel": "Comment", "commentPlaceholder": "What do you think about this tool?", "nameOptional": "Name (Optional)", "nameLabel": "Name", "anonymousPlaceholder": "Anonymous", "anonymousEngineer": "Anonymous User", "beFirstToReview": "Be the first to share your thoughts on this tool.", "shareExperience": "Share your experience with {{name}}", "score": "Score", "toastRelationCreated": "Relation created", "toastRelationFailed": "Failed to create relation", "toastRelationDeleted": "Relation deleted", "toastRelationDeleteFailed": "Failed to delete relation", "toastCostUpdated": "Cost updated", "toastCostAdded": "Cost added", "toastCostFailed": "Failed to save cost", "toastCostDeleted": "Cost deleted", "toastCostDeleteFailed": "Failed to delete cost", "toastRatingSubmitted": "Rating submitted", "toastRatingThanks": "Thank you for your feedback!", "toastRatingFailed": "Failed to submit rating", "toastToolDeleted": "Tool deleted", "toastDeleteFailed": "Failed to delete", "unexpectedError": "An unexpected error occurred." }, "compare": { "title": "Compare Tools", "subtitle": "Comparing {{count}} tool(s) side-by-side.", "sideBySide": "Side-by-side comparison", "bestValue": "Best value in each row is highlighted.", "attribute": "Attribute", "rating": "Rating", "reviews": "Reviews", "description": "Description", "lastUpdated": "Last updated", "requiresPremium": "Compare requires a higher tier", "requiresPremiumSub": "Compare tools side-by-side is available to Premium and Enterprise users.", "nothingToCompare": "Nothing to compare", "nothingToCompareSub": "Select at least one tool to compare and come back here.", "backToBrowse": "Back to browse" }, "watchlist": { "title": "Watchlist", "subtitle": "Tools you saved for later, with live scores.", "requiresPremium": "Watchlist requires a higher tier", "requiresPremiumSub": "Saving tools to your watchlist is available to Premium and Enterprise users.", "empty": "Your watchlist is empty", "emptySub": "Browse tools and click the bookmark to save them here.", "remove": "Remove from watchlist" }, "trash": { "title": "Trash", "subtitle": "Deleted tools are kept here until they are restored or permanently removed.", "requiresPremium": "Trash requires a higher tier", "requiresPremiumSub": "The trash is available to Premium and Enterprise users.", "empty": "The trash is empty.", "noMatch": "No tools match your search.", "trashedTools": "Trashed Tools", "toolsInTrash_one": "{{count}} tool in trash", "toolsInTrash_other": "{{count}} tools in trash", "selected_one": "{{count}} selected", "selected_other": "{{count}} selected", "restore": "Restore", "deletePermanently": "Delete permanently", "emptyTrash": "Empty trash", "deletedAt": "Deleted at", "deletedBy": "Deleted by", "name": "Name", "category": "Category", "actions": "Actions", "selectAll": "Select all", "selectName": "Select {{name}}", "restoreAction": "Restore", "deleteAction": "Delete", "deleteConfirmTitle": "Delete {{count}} tool(s) permanently?", "deleteConfirmSub": "This permanently removes the selected tools along with all their ratings, costs and relations. This cannot be undone.", "emptyConfirmTitle": "Empty the trash?", "emptyConfirmSub": "This permanently removes all {{count}} tool(s) in the trash along with their ratings, costs and relations. This cannot be undone.", "toastRestored": "Tools restored", "toastRestoredSub": "{{count}} tool(s) restored.", "toastRestoreFailed": "Failed to restore", "toastDeleted": "Tools deleted", "toastDeletedSub": "{{count}} tool(s) permanently removed.", "toastDeleteFailed": "Failed to delete", "toastEmptied": "Trash emptied", "toastEmptiedSub": "{{count}} tool(s) permanently removed.", "toastEmptyFailed": "Failed to empty trash", "searchPlaceholder": "Search tools…", "toolCount": "{{count}} tool(s)" }, "notFound": { "text": "This page doesn't exist.", "backHome": "Back to Home" }, "docs": { "title": "Documentation", "subtitle": "Version-bound documentation — release notes, endpoints and data fields per version.", "backToIndex": "All releases", "noDocs": "No documentation available for this path.", "version": "Version", "latest": "Latest", "repo": "Repository", "nav": "Documentation", "guides": "Guides", "endpoints": "Endpoints", "schemas": "Data models", "releases": "Release notes", "reference": "API reference", "referenceIntro": "Generated automatically from the OpenAPI spec — all endpoints and data fields of the current version.", "onThisPage": "On this page", "searchPlaceholder": "Search docs…", "backToApp": "Back to app", "field": "Field", "type": "Type", "required": "Required", "description": "Description", "status": "Status", "schema": "Schema", "parameter": "Parameter", "noResults": "No results", "fields": "Fields", "name": "Name", "in": "In", "requestBody": "Request Body" }, "command": { "navigate": "Navigate", "recent": "Recent", "tools": "Tools", "noResults": "No tools found for \"{{query}}\".", "startTyping": "Start typing to search tools." }, "admin": { "accessRequired": "Admin Access Required", "accessRequiredSub": "You need admin rights to view this page.", "goHome": "Go Home", "panel": "Admin Panel", "panelSub": "Manage users and review system changes.", "redundancyDashboard": "Redundancy Dashboard", "tabUsers": "Users", "tabTools": "Tools", "tabAudit": "Audit Log", "tabSystem": "System", "localUsers": "Local Users", "localUsersSub": "Manage accounts for local authentication.", "addUser": "Add User", "noUsersYet": "No users yet.", "auditLog": "Audit Log", "auditLogSub": "All create, update and delete operations tracked by the system.", "by": "by", "noAuditEntries": "No audit entries yet.", "system": "System", "systemSub": "Build information of the currently live deployment.", "version": "Version", "commit": "Commit", "buildDate": "Build date", "trashRetention": "Trash retention", "days": "days", "keepForever": "Keep forever", "createNewUser": "Create New User", "username": "Username", "password": "Password", "emailOptional": "Email (Optional)", "role": "Role", "roleUser": "User", "roleAdmin": "Admin", "plan": "Plan", "planFree": "Free", "planPremium": "Premium", "planEnterprise": "Enterprise", "creating": "Creating…", "createUser": "Create User", "editUser": "Edit User — {{username}}", "setPassword": "Set Password", "resetsPassword": "Resets the user's password immediately.", "idpManaged": "Password is managed by the identity provider (Keycloak). Reset it there.", "setting": "Setting…", "deleteUser": "Delete User", "deleteUserConfirm": "Are you sure you want to delete {{username}}? This cannot be undone.", "minPasswordPlaceholder": "min. 6 characters", "usernamePlaceholder": "username", "emailPlaceholder": "user@example.com", "toastUserCreated": "User created", "toastUserCreatedSub": "{{username}} has been created.", "toastUserCreateFailed": "Failed to create user", "toastUserUpdated": "User updated", "toastUserUpdateFailed": "Failed to update user", "toastPwTooShort": "Password too short", "toastPwTooShortSub": "Minimum 6 characters.", "toastPwUpdated": "Password updated", "toastPwUpdatedSub": "Password for {{username}} has been set.", "toastPwSetFailed": "Failed to set password", "toastUserDeleted": "User deleted", "toastUserDeletedSub": "{{username}} has been removed.", "toastUserDeleteFailed": "Failed to delete user" }, "adminTools": { "accessRequired": "Admin access required.", "allTools": "All Tools", "toolCount": "{{count}} tool(s)", "selected": "{{count}} selected", "searchPlaceholder": "Search tools…", "moveToTrash": "Move to trash ({{count}})", "noMatch": "No tools match your search.", "noToolsYet": "No tools yet.", "selectAll": "Select all", "selectName": "Select {{name}}", "name": "Name", "category": "Category", "rating": "Rating", "createdBy": "Created by", "createdAt": "Created at", "actions": "Actions", "confirmTitle": "Move {{count}} tool(s) to trash?", "confirmSub": "The selected tools will be hidden from all public views and moved to the trash, where they can be restored or permanently deleted.", "moveToTrashAction": "Move to trash", "toastMoved": "Tools moved to trash", "toastMovedSub": "{{count}} tool(s) moved to trash.", "toastMoveFailed": "Failed to move to trash", "importTitle": "Import tools", "importSub": "Import multiple tools at once — as CSV, JSON or YAML (premium feature).", "importButton": "Import", "importFormatAuto": "Auto", "importFormatAutoSub": "The format is detected automatically (CSV, JSON or YAML).", "importDelimiter": "CSV delimiter", "importDelimiterAuto": "Auto-detect", "importDelimiterComma": "Comma", "importDelimiterSemicolon": "Semicolon", "importDelimiterTab": "Tab", "importCsvSub": "Columns: name, description, category, websiteUrl, iconUrl, features, tags. Separate features/tags with |. The first line holds the column names.", "importJsonSub": "A JSON object or array of objects with the fields name, description, category, websiteUrl, iconUrl, features, tags.", "importYamlSub": "A YAML list of objects (or a single object) with the fields name, description, category, websiteUrl, iconUrl, features, tags.", "importFile": "Upload file", "importTextareaPlaceholder": "name;description;category;features;tags\nMy Tool;A great description;Monitoring;Deployment|Open Source;devops", "importTextareaPlaceholderCsv": "name;description;category;features;tags\nMy Tool;A great description;Monitoring;Deployment|Open Source;devops", "importTextareaPlaceholderJson": "[\n {\n \"name\": \"My Tool\",\n \"description\": \"A great description\",\n \"category\": \"Monitoring\",\n \"features\": [\"Deployment\", \"Open Source\"],\n \"tags\": [\"devops\"]\n }\n]", "importTextareaPlaceholderYaml": "- name: My Tool\n description: A great description\n category: Monitoring\n features:\n - Deployment\n - Open Source\n tags:\n - devops", "importTextareaPlaceholderAuto": "name;description;category\nMy Tool;A great description;Monitoring", "importing": "Importing…", "importDone": "{{count}} of {{total}} tools imported successfully.", "importErrors": "{{count}} rows with errors:", "importErrorRow": "Row {{row}}", "toastImportDone": "Tools imported successfully" }, "analytics": { "title": "Platform Analytics", "subtitle": "Macro-level insights into tool performance and community engagement.", "totalToolsIndexed": "Total Tools Indexed", "totalRatingsCast": "Total Ratings Cast", "activeCategories": "Active Categories", "avgGlobalScore": "Avg Global Score", "top8Tools": "Top 8 Tools by Combined Score", "top8ToolsSub": "Highest rated tools across the platform", "toolsByCategory": "Tools by Category", "toolsByCategorySub": "Distribution of tools across categories", "globalRatingDistribution": "Global Rating Distribution", "globalRatingDistributionSub": "How users are voting across all tools", "radarTools": "Tools" }, "redundancy": { "title": "Tool Analysis & Recommendations", "subtitle": "Automatic redundancy detection with cost and rating comparison. Admin can manually confirm which tool is the better choice.", "toolsComparisons": "{{tools}} tools, {{pairs}} comparisons", "totalMonthly": "/mo total", "reviews": "reviews", "features": "features", "comparisonsTitle": "Comparisons & Recommendations", "vs": "vs", "noTools": "No tools found.", "perMonth": "/mo", "toastEvalSaved": "Evaluation saved", "toastEvalFailed": "Failed to save evaluation" }, "toolForm": { "backToBrowse": "Back to browse", "backToTool": "Back to tool", "addTitle": "Add a New Tool", "addSubtitle": "Submit a tool you use to let the community rate and review it.", "editTitle": "Edit Tool", "editSubtitle": "Update tool details and metadata.", "signInRequired": "Sign in required", "signInRequiredSub": "You must be signed in to submit a tool.", "toolDetails": "Tool Details", "toolDetailsNewSub": "Provide the basic information about the tool.", "toolDetailsEditSub": "Modify the tool information below.", "name": "Name", "nameMin": "Name must be at least 2 characters", "category": "Category", "categoryRequired": "Category is required", "websiteUrl": "Website URL", "websiteUrlOptional": "Website URL (Optional)", "iconUrl": "Icon / Logo URL", "iconUrlOptional": "Icon / Logo URL (Optional)", "iconPreview": "icon preview", "description": "Description", "descriptionMin": "Description must be at least 10 characters", "invalidUrl": "Must be a valid URL", "features": "Features", "featuresNewSub": "List key capabilities. Existing features from other tools are selectable.", "featuresEditSub": "Key capabilities of this tool. Existing features from other tools are selectable.", "addFeature": "Add Feature", "noFeatures": "No features added.", "featurePlaceholder": "e.g. Real-time collaboration", "tags": "Tags", "tagsNewSub": "Keywords to help find this tool. Existing tags from other tools are selectable.", "tagsEditSub": "Keywords for this tool. Existing tags from other tools are selectable.", "addTag": "Add Tag", "tag": "Tag", "namePlaceholder": "e.g. React, Next.js, Postgres", "urlPlaceholder": "https://...", "logoPlaceholder": "https://example.com/logo.png", "descriptionPlaceholderNew": "What does this tool do? Why do people use it?", "descriptionPlaceholderEdit": "What does this tool do?", "addingTool": "Adding Tool...", "submitTool": "Submit Tool", "saving": "Saving…", "saveChanges": "Save Changes", "toastAdded": "Tool added successfully", "toastAddedSub": "Your tool is now available for review.", "toastAddFailed": "Failed to add tool", "toastUpdated": "Tool updated", "toastUpdatedSub": "Changes saved successfully.", "toastUpdateFailed": "Failed to update tool", "tagsHelp": "Keywords to help find this tool. Existing tags from other tools are selectable.", "tagPlaceholder": "Tag" }, "category": { "placeholder": "Select or type a category...", "searchPlaceholder": "Search or enter new category...", "noCategories": "No categories found.", "knownCategories": "Known categories", "createNew": "Create new", "create": "+ Create" }, "theme": { "title": "Theme", "light": "Light", "dark": "Dark", "system": "System", "chooseTitle": "Choose theme", "switchLight": "Switch to light theme", "switchDark": "Switch to dark theme" } }