fix: translation related behaviors

This commit is contained in:
Ibrahima G. Coulibaly
2025-07-14 18:04:30 +01:00
parent a6a2c1f3a1
commit 3b5f852287
112 changed files with 401 additions and 648 deletions

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Base64',
path: 'base64',
icon: 'tabler:number-64-small',
description:
'A simple tool to encode or decode data using Base64, which is commonly used in web applications.',
shortDescription: 'Encode or decode data using Base64.',
keywords: ['base64'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,15 +2,10 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Text Censor',
path: 'censor',
shortDescription:
'Quickly mask bad words or replace them with alternative words.',
icon: 'hugeicons:text-footnote',
description:
"utility for censoring words in text. Load your text in the input form on the left, specify all the bad words in the options, and you'll instantly get censored text in the output area.",
longDescription:
'With this online tool, you can censor certain words in any text. You can specify a list of unwanted words (such as swear words or secret words) and the program will replace them with alternative words and create a safe-to-read text. The words can be specified in a multi-line text field in the options by entering one word per line.',
keywords: ['text', 'censor', 'words', 'characters'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -3,14 +3,9 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'Create palindrome',
path: 'create-palindrome',
icon: 'material-symbols-light:repeat',
description:
"World's simplest browser-based utility for creating palindromes from any text. Input text and instantly transform it into a palindrome that reads the same forward and backward. Perfect for word games, creating symmetrical text patterns, or exploring linguistic curiosities.",
shortDescription: 'Create text that reads the same forward and backward',
longDescription:
'This tool creates a palindrome from the given string. It does it by generating a copy of the string, reversing it, and appending it at the end of the original string. This method creates a palindrome with the last character duplicated twice. There is also another way to do it, which deletes the first letter of the reversed copy. In this case, when the string and the copy are joined together, you also get a palindrome but without the repeating last character. You can compare the two types of palindromes by switching between them in the options. You can also enable the multi-line mode that will create palindromes of every string on every line. Stringabulous!',
keywords: ['create', 'palindrome'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -3,12 +3,9 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'Extract substring',
path: 'extract-substring',
icon: 'material-symbols-light:content-cut',
description:
"World's simplest browser-based utility for extracting substrings from text. Input your text and specify start and end positions to extract the desired portion. Perfect for data processing, text analysis, or extracting specific content from larger text blocks.",
shortDescription: 'Extract a portion of text between specified positions',
keywords: ['extract', 'substring'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Join',
path: 'join',
icon: 'material-symbols-light:join',
description:
"World's simplest browser-based utility for joining text elements. Input your text elements and specify a separator to combine them into a single string. Perfect for data processing, text manipulation, or creating formatted output from lists.",
shortDescription: 'Join text elements with a specified separator',
keywords: ['join'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -3,12 +3,9 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'Palindrome',
path: 'palindrome',
icon: 'material-symbols-light:search',
description:
"World's simplest browser-based utility for checking if text is a palindrome. Instantly verify if your text reads the same forward and backward. Perfect for word puzzles, linguistic analysis, or validating symmetrical text patterns. Supports various delimiters and multi-word palindrome detection.",
shortDescription: 'Check if text reads the same forward and backward',
keywords: ['palindrome'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -3,12 +3,9 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'Quote',
path: 'quote',
icon: 'material-symbols-light:format-quote',
description:
"World's simplest browser-based utility for adding quotes to text. Input your text and instantly add various quote styles around it. Perfect for formatting text, creating citations, or adding emphasis to specific content.",
shortDescription: 'Add quotes around text with various styles',
keywords: ['quote'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -3,12 +3,9 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'Randomize case',
path: 'randomize-case',
icon: 'material-symbols-light:shuffle',
description:
"World's simplest browser-based utility for randomizing text case. Input your text and instantly transform it with random upper and lower case letters. Perfect for creating unique text effects, testing case sensitivity, or generating varied text patterns.",
shortDescription: 'Randomize the case of letters in text',
keywords: ['randomize', 'case'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Remove duplicate lines',
path: 'remove-duplicate-lines',
icon: 'pepicons-print:duplicate-off',
description:
"Load your text in the input form on the left and you'll instantly get text with no duplicate lines in the output area. Powerful, free, and fast. Load text lines get unique text lines",
shortDescription: 'Quickly delete all repeated lines from text',
keywords: ['remove', 'duplicate', 'lines'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,10 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Repeat text',
path: 'repeat',
shortDescription: 'Repeat text multiple times',
icon: 'material-symbols-light:replay',
description:
'This tool allows you to repeat a given text multiple times with an optional separator.',
keywords: ['text', 'repeat'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Reverse',
path: 'reverse',
icon: 'material-symbols-light:swap-horiz',
description:
"World's simplest browser-based utility for reversing text. Input any text and get it instantly reversed, character by character. Perfect for creating mirror text, analyzing palindromes, or playing with text patterns. Preserves spaces and special characters while reversing.",
shortDescription: 'Reverse any text character by character',
keywords: ['reverse'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -8,12 +8,10 @@ export const tool = defineTool('string', {
description: 'string:rot13.description',
shortDescription: 'string:rot13.shortDescription'
},
name: 'Rot13',
path: 'rot13',
icon: 'hugeicons:encrypt',
description:
'A simple tool to encode or decode text using the ROT13 cipher, which replaces each letter with the letter 13 positions after it in the alphabet.',
shortDescription: 'Encode or decode text using ROT13 cipher.',
keywords: ['rot13'],
component: lazy(() => import('./index'))
});

View File

@@ -8,12 +8,10 @@ export const tool = defineTool('string', {
description: 'string:rotate.description',
shortDescription: 'string:rotate.shortDescription'
},
name: 'Rotate',
path: 'rotate',
icon: 'carbon:rotate',
description:
'A tool to rotate characters in a string by a specified number of positions. Shift characters left or right while maintaining their relative order.',
shortDescription: 'Shift characters in text by position.',
keywords: ['rotate'],
component: lazy(() => import('./index'))
});

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Split',
path: 'split',
icon: 'material-symbols-light:call-split',
description:
"World's simplest browser-based utility for splitting text. Input your text and specify a separator to split it into multiple parts. Perfect for data processing, text manipulation, or extracting specific content from larger text blocks.",
shortDescription: 'Split text into multiple parts using a separator',
keywords: ['split'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,14 +2,10 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Text Statistics',
path: 'statistics',
shortDescription: 'Get statistics about your text',
icon: 'fluent:document-landscape-data-24-filled',
description:
'Load your text in the input form on the left and you will automatically get statistics about your text on the right.',
longDescription:
'This tool provides various statistics about the text you input, including the number of lines, words, and characters. You can also choose to include empty lines in the count. it can count words and characters based on custom delimiters, allowing for flexible text analysis. Additionally, it can provide frequency statistics for words and characters, helping you understand the distribution of terms in your text.',
keywords: ['text', 'statistics', 'count', 'lines', 'words', 'characters'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -7,12 +7,11 @@ export const tool = defineTool('string', {
description: 'string:textReplacer.description',
shortDescription: 'string:textReplacer.shortDescription'
},
name: 'Text Replacer',
path: 'replacer',
shortDescription: 'Quickly replace text in your content',
icon: 'material-symbols-light:find-replace',
description:
'Easily replace specific text in your content with this simple, browser-based tool. Just input your text, set the text you want to replace and the replacement value, and instantly get the updated version.',
keywords: ['text', 'replace'],
component: lazy(() => import('./index'))
});

View File

@@ -3,12 +3,8 @@ import { lazy } from 'react';
// import image from '@assets/text.png';
export const tool = defineTool('string', {
name: 'String To morse',
path: 'to-morse',
icon: 'arcticons:morse',
description:
"World's simplest browser-based utility for converting text to Morse code. Load your text in the input form on the left and you'll instantly get Morse code in the output area. Powerful, free, and fast. Load text get Morse code.",
shortDescription: 'Quickly encode text to morse',
keywords: ['to', 'morse'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Truncate',
path: 'truncate',
icon: 'material-symbols-light:content-cut',
description:
"World's simplest browser-based utility for truncating text. Input your text and specify the maximum length to cut it down. Perfect for data processing, text formatting, or limiting content length.",
shortDescription: 'Truncate text to a specified length',
keywords: ['truncate'],
component: lazy(() => import('./index')),
i18n: {

View File

@@ -2,12 +2,9 @@ import { defineTool } from '@tools/defineTool';
import { lazy } from 'react';
export const tool = defineTool('string', {
name: 'Uppercase',
path: 'uppercase',
icon: 'material-symbols-light:format-textdirection-l-to-r',
description:
"World's simplest browser-based utility for converting text to uppercase. Input your text and instantly get all characters in uppercase. Perfect for formatting, shouting, or emphasizing text.",
shortDescription: 'Convert text to uppercase',
keywords: ['uppercase'],
component: lazy(() => import('./index')),
i18n: {