e164d51574
- Raise compare limit from 8 to 9 (server + client, toast on overflow) - Make import textarea placeholder match selected format (CSV/JSON/YAML/auto) - Add GuideHelp links to admin create/edit user dialogs and tool import dialog
532 lines
22 KiB
JSON
532 lines
22 KiB
JSON
{
|
||
"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"
|
||
}
|
||
}
|