From 95698cb9380d541b86144df4ee5fae310c234f20 Mon Sep 17 00:00:00 2001 From: Corentin THOMASSET Date: Thu, 1 Feb 2024 14:05:54 +0100 Subject: [PATCH 01/10] refactor(i18n): added locales per tool (#861) --- src/tools/base64-file-converter/index.ts | 5 +++-- src/tools/base64-file-converter/locales/en.yml | 4 ++++ src/tools/base64-string-converter/index.ts | 5 +++-- src/tools/base64-string-converter/locales/en.yml | 4 ++++ src/tools/basic-auth-generator/index.ts | 5 +++-- src/tools/basic-auth-generator/locales/en.yml | 4 ++++ src/tools/bcrypt/index.ts | 6 +++--- src/tools/bcrypt/locales/en.yml | 4 ++++ src/tools/benchmark-builder/index.ts | 5 +++-- src/tools/benchmark-builder/locales/en.yml | 4 ++++ src/tools/bip39-generator/index.ts | 5 +++-- src/tools/bip39-generator/locales/en.yml | 4 ++++ src/tools/camera-recorder/index.ts | 5 +++-- src/tools/camera-recorder/locales/en.yml | 4 ++++ src/tools/case-converter/index.ts | 5 +++-- src/tools/case-converter/locales/en.yml | 4 ++++ src/tools/chmod-calculator/index.ts | 5 +++-- src/tools/chmod-calculator/locales/en.yml | 4 ++++ src/tools/chronometer/index.ts | 5 +++-- src/tools/chronometer/locales/en.yml | 4 ++++ src/tools/color-converter/index.ts | 5 +++-- src/tools/color-converter/locales/en.yml | 4 ++++ src/tools/crontab-generator/index.ts | 5 +++-- src/tools/crontab-generator/locales/en.yml | 4 ++++ src/tools/date-time-converter/index.ts | 5 +++-- src/tools/date-time-converter/locales/en.yml | 4 ++++ src/tools/device-information/index.ts | 5 +++-- src/tools/device-information/locales/en.yml | 4 ++++ src/tools/docker-run-to-docker-compose-converter/index.ts | 5 +++-- .../docker-run-to-docker-compose-converter/locales/en.yml | 4 ++++ src/tools/emoji-picker/index.ts | 5 +++-- src/tools/emoji-picker/locales/en.yml | 4 ++++ src/tools/encryption/index.ts | 5 +++-- src/tools/encryption/locales/en.yml | 4 ++++ src/tools/eta-calculator/index.ts | 6 +++--- src/tools/eta-calculator/locales/en.yml | 4 ++++ src/tools/git-memo/index.ts | 6 +++--- src/tools/git-memo/locales/en.yml | 4 ++++ src/tools/hash-text/index.ts | 6 +++--- src/tools/hash-text/locales/en.yml | 4 ++++ src/tools/hmac-generator/index.ts | 6 +++--- src/tools/hmac-generator/locales/en.yml | 4 ++++ src/tools/html-entities/index.ts | 5 +++-- src/tools/html-entities/locales/en.yml | 4 ++++ src/tools/html-wysiwyg-editor/index.ts | 5 +++-- src/tools/html-wysiwyg-editor/locales/en.yml | 4 ++++ src/tools/http-status-codes/index.ts | 5 +++-- src/tools/http-status-codes/locales/en.yml | 4 ++++ src/tools/iban-validator-and-parser/index.ts | 5 +++-- src/tools/iban-validator-and-parser/locales/en.yml | 4 ++++ src/tools/integer-base-converter/index.ts | 5 +++-- src/tools/integer-base-converter/locales/en.yml | 4 ++++ src/tools/ipv4-address-converter/index.ts | 5 +++-- src/tools/ipv4-address-converter/locales/en.yml | 4 ++++ src/tools/ipv4-range-expander/index.ts | 6 +++--- src/tools/ipv4-range-expander/locales/en.yml | 4 ++++ src/tools/ipv4-subnet-calculator/index.ts | 5 +++-- src/tools/ipv4-subnet-calculator/locales/en.yml | 4 ++++ src/tools/ipv6-ula-generator/index.ts | 5 +++-- src/tools/ipv6-ula-generator/locales/en.yml | 4 ++++ src/tools/json-diff/index.ts | 5 +++-- src/tools/json-diff/locales/en.yml | 4 ++++ src/tools/json-minify/index.ts | 5 +++-- src/tools/json-minify/locales/en.yml | 4 ++++ src/tools/json-to-csv/index.ts | 5 +++-- src/tools/json-to-csv/locales/en.yml | 4 ++++ src/tools/json-to-toml/index.ts | 5 +++-- src/tools/json-to-toml/locales/en.yml | 4 ++++ src/tools/json-to-yaml-converter/index.ts | 5 +++-- src/tools/json-to-yaml-converter/locales/en.yml | 4 ++++ src/tools/json-viewer/index.ts | 5 +++-- src/tools/json-viewer/locales/en.yml | 4 ++++ src/tools/jwt-parser/index.ts | 5 +++-- src/tools/jwt-parser/locales/en.yml | 4 ++++ src/tools/keycode-info/index.ts | 5 +++-- src/tools/keycode-info/locales/en.yml | 4 ++++ src/tools/list-converter/index.ts | 6 +++--- src/tools/list-converter/locales/en.yml | 4 ++++ src/tools/lorem-ipsum-generator/index.ts | 6 +++--- src/tools/lorem-ipsum-generator/locales/en.yml | 4 ++++ src/tools/mac-address-generator/index.ts | 5 +++-- src/tools/mac-address-generator/locales/en.yml | 4 ++++ src/tools/mac-address-lookup/index.ts | 5 +++-- src/tools/mac-address-lookup/locales/en.yml | 4 ++++ src/tools/math-evaluator/index.ts | 5 +++-- src/tools/math-evaluator/locales/en.yml | 4 ++++ src/tools/meta-tag-generator/index.ts | 5 +++-- src/tools/meta-tag-generator/locales/en.yml | 4 ++++ src/tools/mime-types/index.ts | 5 +++-- src/tools/mime-types/locales/en.yml | 4 ++++ src/tools/numeronym-generator/index.ts | 5 +++-- src/tools/numeronym-generator/locales/en.yml | 4 ++++ src/tools/otp-code-generator-and-validator/index.ts | 5 +++-- src/tools/otp-code-generator-and-validator/locales/en.yml | 4 ++++ src/tools/password-strength-analyser/index.ts | 5 +++-- src/tools/password-strength-analyser/locales/en.yml | 4 ++++ src/tools/pdf-signature-checker/index.ts | 5 +++-- src/tools/pdf-signature-checker/locales/en.yml | 4 ++++ src/tools/percentage-calculator/index.ts | 5 +++-- src/tools/percentage-calculator/locales/en.yml | 4 ++++ src/tools/phone-parser-and-formatter/index.ts | 6 +++--- src/tools/phone-parser-and-formatter/locales/en.yml | 4 ++++ src/tools/qr-code-generator/index.ts | 6 +++--- src/tools/qr-code-generator/locales/en.yml | 4 ++++ src/tools/random-port-generator/index.ts | 5 +++-- src/tools/random-port-generator/locales/en.yml | 4 ++++ src/tools/roman-numeral-converter/index.ts | 5 +++-- src/tools/roman-numeral-converter/locales/en.yml | 4 ++++ src/tools/rsa-key-pair-generator/index.ts | 5 +++-- src/tools/rsa-key-pair-generator/locales/en.yml | 4 ++++ src/tools/slugify-string/index.ts | 5 +++-- src/tools/slugify-string/locales/en.yml | 4 ++++ src/tools/sql-prettify/index.ts | 5 +++-- src/tools/sql-prettify/locales/en.yml | 4 ++++ src/tools/string-obfuscator/index.ts | 5 +++-- src/tools/string-obfuscator/locales/en.yml | 4 ++++ src/tools/svg-placeholder-generator/index.ts | 5 +++-- src/tools/svg-placeholder-generator/locales/en.yml | 4 ++++ src/tools/temperature-converter/index.ts | 6 +++--- src/tools/temperature-converter/locales/en.yml | 4 ++++ src/tools/text-diff/index.ts | 5 +++-- src/tools/text-diff/locales/en.yml | 4 ++++ src/tools/text-statistics/index.ts | 5 +++-- src/tools/text-statistics/locales/en.yml | 4 ++++ src/tools/text-to-binary/index.ts | 5 +++-- src/tools/text-to-binary/locales/en.yml | 4 ++++ src/tools/text-to-nato-alphabet/index.ts | 5 +++-- src/tools/text-to-nato-alphabet/locales/en.yml | 4 ++++ src/tools/text-to-unicode/index.ts | 5 +++-- src/tools/text-to-unicode/locales/en.yml | 4 ++++ src/tools/toml-to-json/index.ts | 5 +++-- src/tools/toml-to-json/locales/en.yml | 4 ++++ src/tools/toml-to-yaml/index.ts | 5 +++-- src/tools/toml-to-yaml/locales/en.yml | 4 ++++ src/tools/ulid-generator/index.ts | 5 +++-- src/tools/ulid-generator/locales/en.yml | 4 ++++ src/tools/url-encoder/index.ts | 5 +++-- src/tools/url-encoder/locales/en.yml | 4 ++++ src/tools/url-parser/index.ts | 6 +++--- src/tools/url-parser/locales/en.yml | 4 ++++ src/tools/user-agent-parser/index.ts | 5 +++-- src/tools/user-agent-parser/locales/en.yml | 4 ++++ src/tools/uuid-generator/index.ts | 6 +++--- src/tools/uuid-generator/locales/en.yml | 4 ++++ src/tools/wifi-qr-code-generator/index.ts | 6 +++--- src/tools/wifi-qr-code-generator/locales/en.yml | 4 ++++ src/tools/xml-formatter/index.ts | 5 +++-- src/tools/xml-formatter/locales/en.yml | 4 ++++ src/tools/yaml-to-json-converter/index.ts | 5 +++-- src/tools/yaml-to-json-converter/locales/en.yml | 4 ++++ src/tools/yaml-to-toml/index.ts | 5 +++-- src/tools/yaml-to-toml/locales/en.yml | 4 ++++ src/tools/yaml-viewer/index.ts | 5 +++-- src/tools/yaml-viewer/locales/en.yml | 4 ++++ 154 files changed, 539 insertions(+), 168 deletions(-) create mode 100644 src/tools/base64-file-converter/locales/en.yml create mode 100644 src/tools/base64-string-converter/locales/en.yml create mode 100644 src/tools/basic-auth-generator/locales/en.yml create mode 100644 src/tools/bcrypt/locales/en.yml create mode 100644 src/tools/benchmark-builder/locales/en.yml create mode 100644 src/tools/bip39-generator/locales/en.yml create mode 100644 src/tools/camera-recorder/locales/en.yml create mode 100644 src/tools/case-converter/locales/en.yml create mode 100644 src/tools/chmod-calculator/locales/en.yml create mode 100644 src/tools/chronometer/locales/en.yml create mode 100644 src/tools/color-converter/locales/en.yml create mode 100644 src/tools/crontab-generator/locales/en.yml create mode 100644 src/tools/date-time-converter/locales/en.yml create mode 100644 src/tools/device-information/locales/en.yml create mode 100644 src/tools/docker-run-to-docker-compose-converter/locales/en.yml create mode 100644 src/tools/emoji-picker/locales/en.yml create mode 100644 src/tools/encryption/locales/en.yml create mode 100644 src/tools/eta-calculator/locales/en.yml create mode 100644 src/tools/git-memo/locales/en.yml create mode 100644 src/tools/hash-text/locales/en.yml create mode 100644 src/tools/hmac-generator/locales/en.yml create mode 100644 src/tools/html-entities/locales/en.yml create mode 100644 src/tools/html-wysiwyg-editor/locales/en.yml create mode 100644 src/tools/http-status-codes/locales/en.yml create mode 100644 src/tools/iban-validator-and-parser/locales/en.yml create mode 100644 src/tools/integer-base-converter/locales/en.yml create mode 100644 src/tools/ipv4-address-converter/locales/en.yml create mode 100644 src/tools/ipv4-range-expander/locales/en.yml create mode 100644 src/tools/ipv4-subnet-calculator/locales/en.yml create mode 100644 src/tools/ipv6-ula-generator/locales/en.yml create mode 100644 src/tools/json-diff/locales/en.yml create mode 100644 src/tools/json-minify/locales/en.yml create mode 100644 src/tools/json-to-csv/locales/en.yml create mode 100644 src/tools/json-to-toml/locales/en.yml create mode 100644 src/tools/json-to-yaml-converter/locales/en.yml create mode 100644 src/tools/json-viewer/locales/en.yml create mode 100644 src/tools/jwt-parser/locales/en.yml create mode 100644 src/tools/keycode-info/locales/en.yml create mode 100644 src/tools/list-converter/locales/en.yml create mode 100644 src/tools/lorem-ipsum-generator/locales/en.yml create mode 100644 src/tools/mac-address-generator/locales/en.yml create mode 100644 src/tools/mac-address-lookup/locales/en.yml create mode 100644 src/tools/math-evaluator/locales/en.yml create mode 100644 src/tools/meta-tag-generator/locales/en.yml create mode 100644 src/tools/mime-types/locales/en.yml create mode 100644 src/tools/numeronym-generator/locales/en.yml create mode 100644 src/tools/otp-code-generator-and-validator/locales/en.yml create mode 100644 src/tools/password-strength-analyser/locales/en.yml create mode 100644 src/tools/pdf-signature-checker/locales/en.yml create mode 100644 src/tools/percentage-calculator/locales/en.yml create mode 100644 src/tools/phone-parser-and-formatter/locales/en.yml create mode 100644 src/tools/qr-code-generator/locales/en.yml create mode 100644 src/tools/random-port-generator/locales/en.yml create mode 100644 src/tools/roman-numeral-converter/locales/en.yml create mode 100644 src/tools/rsa-key-pair-generator/locales/en.yml create mode 100644 src/tools/slugify-string/locales/en.yml create mode 100644 src/tools/sql-prettify/locales/en.yml create mode 100644 src/tools/string-obfuscator/locales/en.yml create mode 100644 src/tools/svg-placeholder-generator/locales/en.yml create mode 100644 src/tools/temperature-converter/locales/en.yml create mode 100644 src/tools/text-diff/locales/en.yml create mode 100644 src/tools/text-statistics/locales/en.yml create mode 100644 src/tools/text-to-binary/locales/en.yml create mode 100644 src/tools/text-to-nato-alphabet/locales/en.yml create mode 100644 src/tools/text-to-unicode/locales/en.yml create mode 100644 src/tools/toml-to-json/locales/en.yml create mode 100644 src/tools/toml-to-yaml/locales/en.yml create mode 100644 src/tools/ulid-generator/locales/en.yml create mode 100644 src/tools/url-encoder/locales/en.yml create mode 100644 src/tools/url-parser/locales/en.yml create mode 100644 src/tools/user-agent-parser/locales/en.yml create mode 100644 src/tools/uuid-generator/locales/en.yml create mode 100644 src/tools/wifi-qr-code-generator/locales/en.yml create mode 100644 src/tools/xml-formatter/locales/en.yml create mode 100644 src/tools/yaml-to-json-converter/locales/en.yml create mode 100644 src/tools/yaml-to-toml/locales/en.yml create mode 100644 src/tools/yaml-viewer/locales/en.yml diff --git a/src/tools/base64-file-converter/index.ts b/src/tools/base64-file-converter/index.ts index c27e34ed..4d94402b 100644 --- a/src/tools/base64-file-converter/index.ts +++ b/src/tools/base64-file-converter/index.ts @@ -1,10 +1,11 @@ import { FileDigit } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Base64 file converter', + name: translate('tools.base64-file-converter.title'), path: '/base64-file-converter', - description: 'Convert string, files or images into a it\'s base64 representation.', + description: translate('tools.base64-file-converter.description'), keywords: ['base64', 'converter', 'upload', 'image', 'file', 'conversion', 'web', 'data', 'format'], component: () => import('./base64-file-converter.vue'), icon: FileDigit, diff --git a/src/tools/base64-file-converter/locales/en.yml b/src/tools/base64-file-converter/locales/en.yml new file mode 100644 index 00000000..501e535e --- /dev/null +++ b/src/tools/base64-file-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + base64-file-converter: + title: Base64 file converter + description: Convert string, files or images into a it\'s base64 representation. diff --git a/src/tools/base64-string-converter/index.ts b/src/tools/base64-string-converter/index.ts index 0dd9bee2..e51d54df 100644 --- a/src/tools/base64-string-converter/index.ts +++ b/src/tools/base64-string-converter/index.ts @@ -1,10 +1,11 @@ import { FileDigit } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Base64 string encoder/decoder', + name: translate('tools.base64-string-converter.title'), path: '/base64-string-converter', - description: 'Simply encode and decode string into a their base64 representation.', + description: translate('tools.base64-string-converter.description'), keywords: ['base64', 'converter', 'conversion', 'web', 'data', 'format', 'atob', 'btoa'], component: () => import('./base64-string-converter.vue'), icon: FileDigit, diff --git a/src/tools/base64-string-converter/locales/en.yml b/src/tools/base64-string-converter/locales/en.yml new file mode 100644 index 00000000..19396bfb --- /dev/null +++ b/src/tools/base64-string-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + base64-string-converter: + title: Base64 string encoder/decoder + description: Simply encode and decode string into a their base64 representation. diff --git a/src/tools/basic-auth-generator/index.ts b/src/tools/basic-auth-generator/index.ts index 3138b504..eff6eae3 100644 --- a/src/tools/basic-auth-generator/index.ts +++ b/src/tools/basic-auth-generator/index.ts @@ -1,10 +1,11 @@ import { PasswordRound } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Basic auth generator', + name: translate('tools.basic-auth-generator.title'), path: '/basic-auth-generator', - description: 'Generate a base64 basic auth header from an username and a password.', + description: translate('tools.basic-auth-generator.description'), keywords: [ 'basic', 'auth', diff --git a/src/tools/basic-auth-generator/locales/en.yml b/src/tools/basic-auth-generator/locales/en.yml new file mode 100644 index 00000000..41476191 --- /dev/null +++ b/src/tools/basic-auth-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + basic-auth-generator: + title: Basic auth generator + description: Generate a base64 basic auth header from an username and a password. diff --git a/src/tools/bcrypt/index.ts b/src/tools/bcrypt/index.ts index f70a3a60..9c80c694 100644 --- a/src/tools/bcrypt/index.ts +++ b/src/tools/bcrypt/index.ts @@ -1,11 +1,11 @@ import { LockSquare } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Bcrypt', + name: translate('tools.bcrypt.title'), path: '/bcrypt', - description: - 'Hash and compare text string using bcrypt. Bcrypt is a password-hashing function based on the Blowfish cipher.', + description: translate('tools.bcrypt.description'), keywords: ['bcrypt', 'hash', 'compare', 'password', 'salt', 'round', 'storage', 'crypto'], component: () => import('./bcrypt.vue'), icon: LockSquare, diff --git a/src/tools/bcrypt/locales/en.yml b/src/tools/bcrypt/locales/en.yml new file mode 100644 index 00000000..03629afb --- /dev/null +++ b/src/tools/bcrypt/locales/en.yml @@ -0,0 +1,4 @@ +tools: + bcrypt: + title: Bcrypt + description: Hash and compare text string using bcrypt. Bcrypt is a password-hashing function based on the Blowfish cipher. diff --git a/src/tools/benchmark-builder/index.ts b/src/tools/benchmark-builder/index.ts index 51eb8058..426d287a 100644 --- a/src/tools/benchmark-builder/index.ts +++ b/src/tools/benchmark-builder/index.ts @@ -1,10 +1,11 @@ import { SpeedFilled } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Benchmark builder', + name: translate('tools.benchmark-builder.title'), path: '/benchmark-builder', - description: 'Easily compare execution time of tasks with this very simple online benchmark builder.', + description: translate('tools.benchmark-builder.description'), keywords: ['benchmark', 'builder', 'execution', 'duration', 'mean', 'variance'], component: () => import('./benchmark-builder.vue'), icon: SpeedFilled, diff --git a/src/tools/benchmark-builder/locales/en.yml b/src/tools/benchmark-builder/locales/en.yml new file mode 100644 index 00000000..67364693 --- /dev/null +++ b/src/tools/benchmark-builder/locales/en.yml @@ -0,0 +1,4 @@ +tools: + benchmark-builder: + title: Benchmark builder + description: Easily compare execution time of tasks with this very simple online benchmark builder. diff --git a/src/tools/bip39-generator/index.ts b/src/tools/bip39-generator/index.ts index f649e188..40582da4 100644 --- a/src/tools/bip39-generator/index.ts +++ b/src/tools/bip39-generator/index.ts @@ -1,10 +1,11 @@ import { AlignJustified } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'BIP39 passphrase generator', + name: translate('tools.bip39-generator.title'), path: '/bip39-generator', - description: 'Generate BIP39 passphrase from existing or random mnemonic, or get the mnemonic from the passphrase.', + description: translate('tools.bip39-generator.description'), keywords: ['BIP39', 'passphrase', 'generator', 'mnemonic', 'entropy'], component: () => import('./bip39-generator.vue'), icon: AlignJustified, diff --git a/src/tools/bip39-generator/locales/en.yml b/src/tools/bip39-generator/locales/en.yml new file mode 100644 index 00000000..6f81e614 --- /dev/null +++ b/src/tools/bip39-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + bip39-generator: + title: BIP39 passphrase generator + description: Generate BIP39 passphrase from existing or random mnemonic, or get the mnemonic from the passphrase. diff --git a/src/tools/camera-recorder/index.ts b/src/tools/camera-recorder/index.ts index 3c5d11bd..5cda41f3 100644 --- a/src/tools/camera-recorder/index.ts +++ b/src/tools/camera-recorder/index.ts @@ -1,10 +1,11 @@ import { Camera } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Camera recorder', + name: translate('tools.camera-recorder.title'), path: '/camera-recorder', - description: 'Take a picture or record a video from your webcam or camera.', + description: translate('tools.camera-recorder.description'), keywords: ['camera', 'recoder'], component: () => import('./camera-recorder.vue'), icon: Camera, diff --git a/src/tools/camera-recorder/locales/en.yml b/src/tools/camera-recorder/locales/en.yml new file mode 100644 index 00000000..dfc8cfd2 --- /dev/null +++ b/src/tools/camera-recorder/locales/en.yml @@ -0,0 +1,4 @@ +tools: + camera-recorder: + title: Camera recorder + description: Take a picture or record a video from your webcam or camera. diff --git a/src/tools/case-converter/index.ts b/src/tools/case-converter/index.ts index 710a03f2..14d7ec12 100644 --- a/src/tools/case-converter/index.ts +++ b/src/tools/case-converter/index.ts @@ -1,10 +1,11 @@ import { LetterCaseToggle } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Case converter', + name: translate('tools.case-converter.title'), path: '/case-converter', - description: 'Change the case of a string and chose between different formats', + description: translate('tools.case-converter.description'), keywords: [ 'case', 'converter', diff --git a/src/tools/case-converter/locales/en.yml b/src/tools/case-converter/locales/en.yml new file mode 100644 index 00000000..fd4e4d4c --- /dev/null +++ b/src/tools/case-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + case-converter: + title: Case converter + description: Change the case of a string and chose between different formats diff --git a/src/tools/chmod-calculator/index.ts b/src/tools/chmod-calculator/index.ts index 7d299e42..e6b39df8 100644 --- a/src/tools/chmod-calculator/index.ts +++ b/src/tools/chmod-calculator/index.ts @@ -1,10 +1,11 @@ import { FileInvoice } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Chmod calculator', + name: translate('tools.chmod-calculator.title'), path: '/chmod-calculator', - description: 'Compute your chmod permissions and commands with this online chmod calculator.', + description: translate('tools.chmod-calculator.description'), keywords: [ 'chmod', 'calculator', diff --git a/src/tools/chmod-calculator/locales/en.yml b/src/tools/chmod-calculator/locales/en.yml new file mode 100644 index 00000000..02a2f93b --- /dev/null +++ b/src/tools/chmod-calculator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + chmod-calculator: + title: Chmod calculator + description: Compute your chmod permissions and commands with this online chmod calculator. diff --git a/src/tools/chronometer/index.ts b/src/tools/chronometer/index.ts index 424d03dc..d7d8196a 100644 --- a/src/tools/chronometer/index.ts +++ b/src/tools/chronometer/index.ts @@ -1,10 +1,11 @@ import { TimerOutlined } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Chronometer', + name: translate('tools.chronometer.title'), path: '/chronometer', - description: 'Monitor the duration of a thing. Basically a chronometer with simple chronometer features.', + description: translate('tools.chronometer.description'), keywords: ['chronometer', 'time', 'lap', 'duration', 'measure', 'pause', 'resume', 'stopwatch'], component: () => import('./chronometer.vue'), icon: TimerOutlined, diff --git a/src/tools/chronometer/locales/en.yml b/src/tools/chronometer/locales/en.yml new file mode 100644 index 00000000..e3dda4af --- /dev/null +++ b/src/tools/chronometer/locales/en.yml @@ -0,0 +1,4 @@ +tools: + chronometer: + title: Chronometer + description: Monitor the duration of a thing. Basically a chronometer with simple chronometer features. diff --git a/src/tools/color-converter/index.ts b/src/tools/color-converter/index.ts index c82689cc..9a295e2b 100644 --- a/src/tools/color-converter/index.ts +++ b/src/tools/color-converter/index.ts @@ -1,10 +1,11 @@ import { Palette } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Color converter', + name: translate('tools.color-converter.title'), path: '/color-converter', - description: 'Convert color between the different formats (hex, rgb, hsl and css name)', + description: translate('tools.color-converter.description'), keywords: ['color', 'converter'], component: () => import('./color-converter.vue'), icon: Palette, diff --git a/src/tools/color-converter/locales/en.yml b/src/tools/color-converter/locales/en.yml new file mode 100644 index 00000000..55a41783 --- /dev/null +++ b/src/tools/color-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + color-converter: + title: Color converter + description: Convert color between the different formats (hex, rgb, hsl and css name) diff --git a/src/tools/crontab-generator/index.ts b/src/tools/crontab-generator/index.ts index 49b28389..429d6e14 100644 --- a/src/tools/crontab-generator/index.ts +++ b/src/tools/crontab-generator/index.ts @@ -1,10 +1,11 @@ import { Alarm } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Crontab generator', + name: translate('tools.crontab-generator.title'), path: '/crontab-generator', - description: 'Validate and generate crontab and get the human readable description of the cron schedule.', + description: translate('tools.crontab-generator.description'), keywords: [ 'crontab', 'generator', diff --git a/src/tools/crontab-generator/locales/en.yml b/src/tools/crontab-generator/locales/en.yml new file mode 100644 index 00000000..b8363312 --- /dev/null +++ b/src/tools/crontab-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + crontab-generator: + title: Crontab generator + description: Validate and generate crontab and get the human readable description of the cron schedule. diff --git a/src/tools/date-time-converter/index.ts b/src/tools/date-time-converter/index.ts index 4bc66bf1..b0413fc0 100644 --- a/src/tools/date-time-converter/index.ts +++ b/src/tools/date-time-converter/index.ts @@ -1,10 +1,11 @@ import { Calendar } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Date-time converter', + name: translate('tools.date-converter.title'), path: '/date-converter', - description: 'Convert date and time into the various different formats', + description: translate('tools.date-converter.description'), keywords: ['date', 'time', 'converter', 'iso', 'utc', 'timezone', 'year', 'month', 'day', 'minute', 'seconde'], component: () => import('./date-time-converter.vue'), icon: Calendar, diff --git a/src/tools/date-time-converter/locales/en.yml b/src/tools/date-time-converter/locales/en.yml new file mode 100644 index 00000000..a689eafe --- /dev/null +++ b/src/tools/date-time-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + date-converter: + title: Date-time converter + description: Convert date and time into the various different formats diff --git a/src/tools/device-information/index.ts b/src/tools/device-information/index.ts index e55ae28c..44d91598 100644 --- a/src/tools/device-information/index.ts +++ b/src/tools/device-information/index.ts @@ -1,10 +1,11 @@ import { DeviceDesktop } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Device information', + name: translate('tools.device-information.title'), path: '/device-information', - description: 'Get information about your current device (screen size, pixel-ratio, user agent, ...)', + description: translate('tools.device-information.description'), keywords: [ 'device', 'information', diff --git a/src/tools/device-information/locales/en.yml b/src/tools/device-information/locales/en.yml new file mode 100644 index 00000000..42a9248c --- /dev/null +++ b/src/tools/device-information/locales/en.yml @@ -0,0 +1,4 @@ +tools: + device-information: + title: Device information + description: Get information about your current device (screen size, pixel-ratio, user agent, ...) diff --git a/src/tools/docker-run-to-docker-compose-converter/index.ts b/src/tools/docker-run-to-docker-compose-converter/index.ts index d9c1437f..0ecc4b0b 100644 --- a/src/tools/docker-run-to-docker-compose-converter/index.ts +++ b/src/tools/docker-run-to-docker-compose-converter/index.ts @@ -1,10 +1,11 @@ import { BrandDocker } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Docker run to Docker compose converter', + name: translate('tools.docker-run-to-docker-compose-converter.title'), path: '/docker-run-to-docker-compose-converter', - description: 'Turns docker run commands into docker-compose files!', + description: translate('tools.docker-run-to-docker-compose-converter.description'), keywords: ['docker', 'run', 'compose', 'yaml', 'yml', 'convert', 'deamon'], component: () => import('./docker-run-to-docker-compose-converter.vue'), icon: BrandDocker, diff --git a/src/tools/docker-run-to-docker-compose-converter/locales/en.yml b/src/tools/docker-run-to-docker-compose-converter/locales/en.yml new file mode 100644 index 00000000..ebe0db75 --- /dev/null +++ b/src/tools/docker-run-to-docker-compose-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + docker-run-to-docker-compose-converter: + title: Docker run to Docker compose converter + description: Turns docker run commands into docker-compose files! diff --git a/src/tools/emoji-picker/index.ts b/src/tools/emoji-picker/index.ts index ef01b2de..3a28cf0f 100644 --- a/src/tools/emoji-picker/index.ts +++ b/src/tools/emoji-picker/index.ts @@ -1,10 +1,11 @@ import { MoodSmile } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Emoji picker', + name: translate('tools.emoji-picker.title'), path: '/emoji-picker', - description: 'Copy and paste emojis easily and get the unicode and code points value of each emoji.', + description: translate('tools.emoji-picker.description'), keywords: ['emoji', 'picker', 'unicode', 'copy', 'paste'], component: () => import('./emoji-picker.vue'), icon: MoodSmile, diff --git a/src/tools/emoji-picker/locales/en.yml b/src/tools/emoji-picker/locales/en.yml new file mode 100644 index 00000000..8766e662 --- /dev/null +++ b/src/tools/emoji-picker/locales/en.yml @@ -0,0 +1,4 @@ +tools: + emoji-picker: + title: Emoji picker + description: Copy and paste emojis easily and get the unicode and code points value of each emoji. diff --git a/src/tools/encryption/index.ts b/src/tools/encryption/index.ts index 9a95f4bc..c8dd85db 100644 --- a/src/tools/encryption/index.ts +++ b/src/tools/encryption/index.ts @@ -1,10 +1,11 @@ import { Lock } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Encrypt / decrypt text', + name: translate('tools.encryption.title'), path: '/encryption', - description: 'Encrypt and decrypt text clear text using crypto algorithm like AES, TripleDES, Rabbit or RC4.', + description: translate('tools.encryption.description'), keywords: ['cypher', 'encipher', 'text', 'AES', 'TripleDES', 'Rabbit', 'RC4'], component: () => import('./encryption.vue'), icon: Lock, diff --git a/src/tools/encryption/locales/en.yml b/src/tools/encryption/locales/en.yml new file mode 100644 index 00000000..6be962b5 --- /dev/null +++ b/src/tools/encryption/locales/en.yml @@ -0,0 +1,4 @@ +tools: + encryption: + title: Encrypt / decrypt text + description: Encrypt and decrypt text clear text using crypto algorithm like AES, TripleDES, Rabbit or RC4. diff --git a/src/tools/eta-calculator/index.ts b/src/tools/eta-calculator/index.ts index abda2870..5016ab66 100644 --- a/src/tools/eta-calculator/index.ts +++ b/src/tools/eta-calculator/index.ts @@ -1,11 +1,11 @@ import { Hourglass } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'ETA calculator', + name: translate('tools.eta-calculator.title'), path: '/eta-calculator', - description: - 'An ETA (Estimated Time of Arrival) calculator to know the approximate end time of a task, for example the moment of ending of a download.', + description: translate('tools.eta-calculator.description'), keywords: ['eta', 'calculator', 'estimated', 'time', 'arrival', 'average'], component: () => import('./eta-calculator.vue'), icon: Hourglass, diff --git a/src/tools/eta-calculator/locales/en.yml b/src/tools/eta-calculator/locales/en.yml new file mode 100644 index 00000000..c4d006e2 --- /dev/null +++ b/src/tools/eta-calculator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + eta-calculator: + title: ETA calculator + description: An ETA (Estimated Time of Arrival) calculator to know the approximate end time of a task, for example the moment of ending of a download. diff --git a/src/tools/git-memo/index.ts b/src/tools/git-memo/index.ts index c91ee813..f65ffe07 100644 --- a/src/tools/git-memo/index.ts +++ b/src/tools/git-memo/index.ts @@ -1,11 +1,11 @@ import { BrandGit } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Git cheatsheet', + name: translate('tools.git-memo.title'), path: '/git-memo', - description: - 'Git is a decentralized version management software. With this cheatsheet you will have a quick access to the most common git commands.', + description: translate('tools.git-memo.description'), keywords: ['git', 'push', 'force', 'pull', 'commit', 'amend', 'rebase', 'merge', 'reset', 'soft', 'hard', 'lease'], component: () => import('./git-memo.vue'), icon: BrandGit, diff --git a/src/tools/git-memo/locales/en.yml b/src/tools/git-memo/locales/en.yml new file mode 100644 index 00000000..f435a3e1 --- /dev/null +++ b/src/tools/git-memo/locales/en.yml @@ -0,0 +1,4 @@ +tools: + git-memo: + title: Git cheatsheet + description: Git is a decentralized version management software. With this cheatsheet you will have a quick access to the most common git commands. diff --git a/src/tools/hash-text/index.ts b/src/tools/hash-text/index.ts index 3012747c..2070e41d 100644 --- a/src/tools/hash-text/index.ts +++ b/src/tools/hash-text/index.ts @@ -1,11 +1,11 @@ import { EyeOff } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Hash text', + name: translate('tools.hash-text.title'), path: '/hash-text', - description: - 'Hash a text string using the function you need : MD5, SHA1, SHA256, SHA224, SHA512, SHA384, SHA3 or RIPEMD160', + description: translate('tools.hash-text.description'), keywords: [ 'hash', 'digest', diff --git a/src/tools/hash-text/locales/en.yml b/src/tools/hash-text/locales/en.yml new file mode 100644 index 00000000..909ba8da --- /dev/null +++ b/src/tools/hash-text/locales/en.yml @@ -0,0 +1,4 @@ +tools: + hash-text: + title: Hash text + description: 'Hash a text string using the function you need : MD5, SHA1, SHA256, SHA224, SHA512, SHA384, SHA3 or RIPEMD160' diff --git a/src/tools/hmac-generator/index.ts b/src/tools/hmac-generator/index.ts index c0ca7da4..3500684e 100644 --- a/src/tools/hmac-generator/index.ts +++ b/src/tools/hmac-generator/index.ts @@ -1,11 +1,11 @@ import { ShortTextRound } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Hmac generator', + name: translate('tools.hmac-generator.title'), path: '/hmac-generator', - description: - 'Computes a hash-based message authentication code (HMAC) using a secret key and your favorite hashing function.', + description: translate('tools.hmac-generator.description'), keywords: ['hmac', 'generator', 'MD5', 'SHA1', 'SHA256', 'SHA224', 'SHA512', 'SHA384', 'SHA3', 'RIPEMD160'], component: () => import('./hmac-generator.vue'), icon: ShortTextRound, diff --git a/src/tools/hmac-generator/locales/en.yml b/src/tools/hmac-generator/locales/en.yml new file mode 100644 index 00000000..9e834958 --- /dev/null +++ b/src/tools/hmac-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + hmac-generator: + title: Hmac generator + description: Computes a hash-based message authentication code (HMAC) using a secret key and your favorite hashing function. diff --git a/src/tools/html-entities/index.ts b/src/tools/html-entities/index.ts index 4907dc68..e292f087 100644 --- a/src/tools/html-entities/index.ts +++ b/src/tools/html-entities/index.ts @@ -1,10 +1,11 @@ import { Code } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Escape html entities', + name: translate('tools.html-entities.title'), path: '/html-entities', - description: 'Escape or unescape html entities (replace <,>, &, " and \' to their html version)', + description: translate('tools.html-entities.description'), keywords: ['html', 'entities', 'escape', 'unescape', 'special', 'characters', 'tags'], component: () => import('./html-entities.vue'), icon: Code, diff --git a/src/tools/html-entities/locales/en.yml b/src/tools/html-entities/locales/en.yml new file mode 100644 index 00000000..e9dd6972 --- /dev/null +++ b/src/tools/html-entities/locales/en.yml @@ -0,0 +1,4 @@ +tools: + html-entities: + title: Escape html entities + description: Escape or unescape html entities (replace <,>, &, " and \' to their html version) diff --git a/src/tools/html-wysiwyg-editor/index.ts b/src/tools/html-wysiwyg-editor/index.ts index 461ad235..3a2ab007 100644 --- a/src/tools/html-wysiwyg-editor/index.ts +++ b/src/tools/html-wysiwyg-editor/index.ts @@ -1,10 +1,11 @@ import { Edit } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'HTML WYSIWYG editor', + name: translate('tools.html-wysiwyg-editor.title'), path: '/html-wysiwyg-editor', - description: 'Online HTML editor with feature-rich WYSIWYG editor, get the source code of the content immediately.', + description: translate('tools.html-wysiwyg-editor.description'), keywords: ['html', 'wysiwyg', 'editor', 'p', 'ul', 'ol', 'converter', 'live'], component: () => import('./html-wysiwyg-editor.vue'), icon: Edit, diff --git a/src/tools/html-wysiwyg-editor/locales/en.yml b/src/tools/html-wysiwyg-editor/locales/en.yml new file mode 100644 index 00000000..03e5e503 --- /dev/null +++ b/src/tools/html-wysiwyg-editor/locales/en.yml @@ -0,0 +1,4 @@ +tools: + html-wysiwyg-editor: + title: HTML WYSIWYG editor + description: Online HTML editor with feature-rich WYSIWYG editor, get the source code of the content immediately. diff --git a/src/tools/http-status-codes/index.ts b/src/tools/http-status-codes/index.ts index 43afae83..b3138943 100644 --- a/src/tools/http-status-codes/index.ts +++ b/src/tools/http-status-codes/index.ts @@ -2,11 +2,12 @@ import { HttpRound } from '@vicons/material'; import { defineTool } from '../tool'; import { codesByCategories } from './http-status-codes.constants'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'HTTP status codes', + name: translate('tools.http-status-codes.title'), path: '/http-status-codes', - description: 'The list of all HTTP status codes their name and their meaning.', + description: translate('tools.http-status-codes.description'), keywords: [ 'http', 'status', diff --git a/src/tools/http-status-codes/locales/en.yml b/src/tools/http-status-codes/locales/en.yml new file mode 100644 index 00000000..07f2a168 --- /dev/null +++ b/src/tools/http-status-codes/locales/en.yml @@ -0,0 +1,4 @@ +tools: + http-status-codes: + title: HTTP status codes + description: The list of all HTTP status codes their name and their meaning. diff --git a/src/tools/iban-validator-and-parser/index.ts b/src/tools/iban-validator-and-parser/index.ts index b0cae50d..ff7ff135 100644 --- a/src/tools/iban-validator-and-parser/index.ts +++ b/src/tools/iban-validator-and-parser/index.ts @@ -1,10 +1,11 @@ import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; import Bank from '~icons/mdi/bank'; export const tool = defineTool({ - name: 'IBAN validator and parser', + name: translate('tools.iban-validator-and-parser.title'), path: '/iban-validator-and-parser', - description: 'Validate and parse IBAN numbers. Check if IBAN is valid and get the country, BBAN, if it is a QR-IBAN and the IBAN friendly format.', + description: translate('tools.iban-validator-and-parser.description'), keywords: ['iban', 'validator', 'and', 'parser', 'bic', 'bank'], component: () => import('./iban-validator-and-parser.vue'), icon: Bank, diff --git a/src/tools/iban-validator-and-parser/locales/en.yml b/src/tools/iban-validator-and-parser/locales/en.yml new file mode 100644 index 00000000..ab38c2f2 --- /dev/null +++ b/src/tools/iban-validator-and-parser/locales/en.yml @@ -0,0 +1,4 @@ +tools: + iban-validator-and-parser: + title: IBAN validator and parser + description: Validate and parse IBAN numbers. Check if IBAN is valid and get the country, BBAN, if it is a QR-IBAN and the IBAN friendly format. diff --git a/src/tools/integer-base-converter/index.ts b/src/tools/integer-base-converter/index.ts index 0008568c..f60d996d 100644 --- a/src/tools/integer-base-converter/index.ts +++ b/src/tools/integer-base-converter/index.ts @@ -1,10 +1,11 @@ import { ArrowsLeftRight } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Integer base converter', + name: translate('tools.base-converter.title'), path: '/base-converter', - description: 'Convert number between different bases (decimal, hexadecimal, binary, octal, base64, ...)', + description: translate('tools.base-converter.description'), keywords: ['integer', 'number', 'base', 'conversion', 'decimal', 'hexadecimal', 'binary', 'octal', 'base64'], component: () => import('./integer-base-converter.vue'), icon: ArrowsLeftRight, diff --git a/src/tools/integer-base-converter/locales/en.yml b/src/tools/integer-base-converter/locales/en.yml new file mode 100644 index 00000000..dc3e99f6 --- /dev/null +++ b/src/tools/integer-base-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + base-converter: + title: Integer base converter + description: Convert number between different bases (decimal, hexadecimal, binary, octal, base64, ...) diff --git a/src/tools/ipv4-address-converter/index.ts b/src/tools/ipv4-address-converter/index.ts index 62d2daf1..66ae03a3 100644 --- a/src/tools/ipv4-address-converter/index.ts +++ b/src/tools/ipv4-address-converter/index.ts @@ -1,10 +1,11 @@ import { Binary } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Ipv4 address converter', + name: translate('tools.ipv4-address-converter.title'), path: '/ipv4-address-converter', - description: 'Convert an ip address into decimal, binary, hexadecimal or event in ipv6', + description: translate('tools.ipv4-address-converter.description'), keywords: ['ipv4', 'address', 'converter', 'decimal', 'hexadecimal', 'binary', 'ipv6'], component: () => import('./ipv4-address-converter.vue'), icon: Binary, diff --git a/src/tools/ipv4-address-converter/locales/en.yml b/src/tools/ipv4-address-converter/locales/en.yml new file mode 100644 index 00000000..f12db205 --- /dev/null +++ b/src/tools/ipv4-address-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + ipv4-address-converter: + title: Ipv4 address converter + description: Convert an ip address into decimal, binary, hexadecimal or event in ipv6 diff --git a/src/tools/ipv4-range-expander/index.ts b/src/tools/ipv4-range-expander/index.ts index 233f7cc4..49dfae95 100644 --- a/src/tools/ipv4-range-expander/index.ts +++ b/src/tools/ipv4-range-expander/index.ts @@ -1,11 +1,11 @@ import { UnfoldMoreOutlined } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'IPv4 range expander', + name: translate('tools.ipv4-range-expander.title'), path: '/ipv4-range-expander', - description: - 'Given a start and an end IPv4 address this tool calculates a valid IPv4 network with its CIDR notation.', + description: translate('tools.ipv4-range-expander.description'), keywords: ['ipv4', 'range', 'expander', 'subnet', 'creator', 'cidr'], component: () => import('./ipv4-range-expander.vue'), icon: UnfoldMoreOutlined, diff --git a/src/tools/ipv4-range-expander/locales/en.yml b/src/tools/ipv4-range-expander/locales/en.yml new file mode 100644 index 00000000..53d42fe0 --- /dev/null +++ b/src/tools/ipv4-range-expander/locales/en.yml @@ -0,0 +1,4 @@ +tools: + ipv4-range-expander: + title: IPv4 range expander + description: Given a start and an end IPv4 address this tool calculates a valid IPv4 network with its CIDR notation. diff --git a/src/tools/ipv4-subnet-calculator/index.ts b/src/tools/ipv4-subnet-calculator/index.ts index fb4bfb43..1bae7282 100644 --- a/src/tools/ipv4-subnet-calculator/index.ts +++ b/src/tools/ipv4-subnet-calculator/index.ts @@ -1,10 +1,11 @@ import { RouterOutlined } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'IPv4 subnet calculator', + name: translate('tools.ipv4-subnet-calculator.title'), path: '/ipv4-subnet-calculator', - description: 'Parse your IPv4 CIDR blocks and get all the info you need about your sub network.', + description: translate('tools.ipv4-subnet-calculator.description'), keywords: ['ipv4', 'subnet', 'calculator', 'mask', 'network', 'cidr', 'netmask', 'bitmask', 'broadcast', 'address'], component: () => import('./ipv4-subnet-calculator.vue'), icon: RouterOutlined, diff --git a/src/tools/ipv4-subnet-calculator/locales/en.yml b/src/tools/ipv4-subnet-calculator/locales/en.yml new file mode 100644 index 00000000..34d27f8d --- /dev/null +++ b/src/tools/ipv4-subnet-calculator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + ipv4-subnet-calculator: + title: IPv4 subnet calculator + description: Parse your IPv4 CIDR blocks and get all the info you need about your sub network. diff --git a/src/tools/ipv6-ula-generator/index.ts b/src/tools/ipv6-ula-generator/index.ts index 24efaeba..51bfd6fc 100644 --- a/src/tools/ipv6-ula-generator/index.ts +++ b/src/tools/ipv6-ula-generator/index.ts @@ -1,10 +1,11 @@ import { BuildingFactory } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'IPv6 ULA generator', + name: translate('tools.ipv6-ula-generator.title'), path: '/ipv6-ula-generator', - description: 'Generate your own local, non-routable IP addresses on your network according to RFC4193.', + description: translate('tools.ipv6-ula-generator.description'), keywords: ['ipv6', 'ula', 'generator', 'rfc4193', 'network', 'private'], component: () => import('./ipv6-ula-generator.vue'), icon: BuildingFactory, diff --git a/src/tools/ipv6-ula-generator/locales/en.yml b/src/tools/ipv6-ula-generator/locales/en.yml new file mode 100644 index 00000000..2be89b8d --- /dev/null +++ b/src/tools/ipv6-ula-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + ipv6-ula-generator: + title: IPv6 ULA generator + description: Generate your own local, non-routable IP addresses on your network according to RFC4193. diff --git a/src/tools/json-diff/index.ts b/src/tools/json-diff/index.ts index 7c4c1eee..a4c0319c 100644 --- a/src/tools/json-diff/index.ts +++ b/src/tools/json-diff/index.ts @@ -1,10 +1,11 @@ import { CompareArrowsRound } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON diff', + name: translate('tools.json-diff.title'), path: '/json-diff', - description: 'Compare two JSON objects and get the differences between them.', + description: translate('tools.json-diff.description'), keywords: ['json', 'diff', 'compare', 'difference', 'object', 'data'], component: () => import('./json-diff.vue'), icon: CompareArrowsRound, diff --git a/src/tools/json-diff/locales/en.yml b/src/tools/json-diff/locales/en.yml new file mode 100644 index 00000000..6962461f --- /dev/null +++ b/src/tools/json-diff/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-diff: + title: JSON diff + description: Compare two JSON objects and get the differences between them. diff --git a/src/tools/json-minify/index.ts b/src/tools/json-minify/index.ts index e6a02dbe..fbe5831b 100644 --- a/src/tools/json-minify/index.ts +++ b/src/tools/json-minify/index.ts @@ -1,10 +1,11 @@ import { Braces } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON minify', + name: translate('tools.json-minify.title'), path: '/json-minify', - description: 'Minify and compress your JSON by removing unnecessary white spaces.', + description: translate('tools.json-minify.description'), keywords: ['json', 'minify', 'format'], component: () => import('./json-minify.vue'), icon: Braces, diff --git a/src/tools/json-minify/locales/en.yml b/src/tools/json-minify/locales/en.yml new file mode 100644 index 00000000..c0343a6b --- /dev/null +++ b/src/tools/json-minify/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-minify: + title: JSON minify + description: Minify and compress your JSON by removing unnecessary white spaces. diff --git a/src/tools/json-to-csv/index.ts b/src/tools/json-to-csv/index.ts index acfef02f..9f38b82f 100644 --- a/src/tools/json-to-csv/index.ts +++ b/src/tools/json-to-csv/index.ts @@ -1,10 +1,11 @@ import { List } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON to CSV', + name: translate('tools.json-to-csv.title'), path: '/json-to-csv', - description: 'Convert JSON to CSV with automatic header detection.', + description: translate('tools.json-to-csv.description'), keywords: ['json', 'to', 'csv', 'convert'], component: () => import('./json-to-csv.vue'), icon: List, diff --git a/src/tools/json-to-csv/locales/en.yml b/src/tools/json-to-csv/locales/en.yml new file mode 100644 index 00000000..60d9ccff --- /dev/null +++ b/src/tools/json-to-csv/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-to-csv: + title: JSON to CSV + description: Convert JSON to CSV with automatic header detection. diff --git a/src/tools/json-to-toml/index.ts b/src/tools/json-to-toml/index.ts index 13e45eaf..da42c18d 100644 --- a/src/tools/json-to-toml/index.ts +++ b/src/tools/json-to-toml/index.ts @@ -1,10 +1,11 @@ import { Braces } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON to TOML', + name: translate('tools.json-to-toml.title'), path: '/json-to-toml', - description: 'Parse and convert JSON to TOML.', + description: translate('tools.json-to-toml.description'), keywords: ['json', 'parse', 'toml', 'convert', 'transform'], component: () => import('./json-to-toml.vue'), icon: Braces, diff --git a/src/tools/json-to-toml/locales/en.yml b/src/tools/json-to-toml/locales/en.yml new file mode 100644 index 00000000..d397a3c0 --- /dev/null +++ b/src/tools/json-to-toml/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-to-toml: + title: JSON to TOML + description: Parse and convert JSON to TOML. diff --git a/src/tools/json-to-yaml-converter/index.ts b/src/tools/json-to-yaml-converter/index.ts index 9db09d3e..c01e3ec0 100644 --- a/src/tools/json-to-yaml-converter/index.ts +++ b/src/tools/json-to-yaml-converter/index.ts @@ -1,10 +1,11 @@ import { Braces } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON to YAML converter', + name: translate('tools.json-to-yaml-converter.title'), path: '/json-to-yaml-converter', - description: 'Simply convert JSON to YAML with this live online converter.', + description: translate('tools.json-to-yaml-converter.description'), keywords: ['yaml', 'to', 'json'], component: () => import('./json-to-yaml.vue'), icon: Braces, diff --git a/src/tools/json-to-yaml-converter/locales/en.yml b/src/tools/json-to-yaml-converter/locales/en.yml new file mode 100644 index 00000000..225e85f6 --- /dev/null +++ b/src/tools/json-to-yaml-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-to-yaml-converter: + title: JSON to YAML converter + description: Simply convert JSON to YAML with this live online converter. diff --git a/src/tools/json-viewer/index.ts b/src/tools/json-viewer/index.ts index 6b5b8812..bc488245 100644 --- a/src/tools/json-viewer/index.ts +++ b/src/tools/json-viewer/index.ts @@ -1,10 +1,11 @@ import { Braces } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JSON prettify and format', + name: translate('tools.json-prettify.title'), path: '/json-prettify', - description: 'Prettify your JSON string to a human friendly readable format.', + description: translate('tools.json-prettify.description'), keywords: ['json', 'viewer', 'prettify', 'format'], component: () => import('./json-viewer.vue'), icon: Braces, diff --git a/src/tools/json-viewer/locales/en.yml b/src/tools/json-viewer/locales/en.yml new file mode 100644 index 00000000..7f0a303d --- /dev/null +++ b/src/tools/json-viewer/locales/en.yml @@ -0,0 +1,4 @@ +tools: + json-prettify: + title: JSON prettify and format + description: Prettify your JSON string to a human friendly readable format. diff --git a/src/tools/jwt-parser/index.ts b/src/tools/jwt-parser/index.ts index 7249ace0..939b4b34 100644 --- a/src/tools/jwt-parser/index.ts +++ b/src/tools/jwt-parser/index.ts @@ -1,10 +1,11 @@ import { Key } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'JWT parser', + name: translate('tools.jwt-parser.title'), path: '/jwt-parser', - description: 'Parse and decode your JSON Web Token (jwt) and display its content.', + description: translate('tools.jwt-parser.description'), keywords: [ 'jwt', 'parser', diff --git a/src/tools/jwt-parser/locales/en.yml b/src/tools/jwt-parser/locales/en.yml new file mode 100644 index 00000000..956f9239 --- /dev/null +++ b/src/tools/jwt-parser/locales/en.yml @@ -0,0 +1,4 @@ +tools: + jwt-parser: + title: JWT parser + description: Parse and decode your JSON Web Token (jwt) and display its content. diff --git a/src/tools/keycode-info/index.ts b/src/tools/keycode-info/index.ts index a9ffab2d..a2f36562 100644 --- a/src/tools/keycode-info/index.ts +++ b/src/tools/keycode-info/index.ts @@ -1,10 +1,11 @@ import { Keyboard } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Keycode info', + name: translate('tools.keycode-info.title'), path: '/keycode-info', - description: 'Find the javascript keycode, code, location and modifiers of any pressed key.', + description: translate('tools.keycode-info.description'), keywords: [ 'keycode', 'info', diff --git a/src/tools/keycode-info/locales/en.yml b/src/tools/keycode-info/locales/en.yml new file mode 100644 index 00000000..98322a55 --- /dev/null +++ b/src/tools/keycode-info/locales/en.yml @@ -0,0 +1,4 @@ +tools: + keycode-info: + title: Keycode info + description: Find the javascript keycode, code, location and modifiers of any pressed key. diff --git a/src/tools/list-converter/index.ts b/src/tools/list-converter/index.ts index cf9fbd39..9ae7c512 100644 --- a/src/tools/list-converter/index.ts +++ b/src/tools/list-converter/index.ts @@ -1,11 +1,11 @@ import { List } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'List converter', + name: translate('tools.list-converter.title'), path: '/list-converter', - description: - 'This tool can process column-based data and apply various changes (transpose, add prefix and suffix, reverse list, sort list, lowercase values, truncate values) to each row.', + description: translate('tools.list-converter.description'), keywords: ['list', 'converter', 'sort', 'reverse', 'prefix', 'suffix', 'lowercase', 'truncate'], component: () => import('./list-converter.vue'), icon: List, diff --git a/src/tools/list-converter/locales/en.yml b/src/tools/list-converter/locales/en.yml new file mode 100644 index 00000000..4b1c1999 --- /dev/null +++ b/src/tools/list-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + list-converter: + title: List converter + description: This tool can process column-based data and apply various changes (transpose, add prefix and suffix, reverse list, sort list, lowercase values, truncate values) to each row. diff --git a/src/tools/lorem-ipsum-generator/index.ts b/src/tools/lorem-ipsum-generator/index.ts index 1767d85d..2634d9e0 100644 --- a/src/tools/lorem-ipsum-generator/index.ts +++ b/src/tools/lorem-ipsum-generator/index.ts @@ -1,11 +1,11 @@ import { AlignJustified } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Lorem ipsum generator', + name: translate('tools.lorem-ipsum-generator.title'), path: '/lorem-ipsum-generator', - description: - 'Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document or a typeface without relying on meaningful content', + description: translate('tools.lorem-ipsum-generator.description'), keywords: ['lorem', 'ipsum', 'dolor', 'sit', 'amet', 'placeholder', 'text', 'filler', 'random', 'generator'], component: () => import('./lorem-ipsum-generator.vue'), icon: AlignJustified, diff --git a/src/tools/lorem-ipsum-generator/locales/en.yml b/src/tools/lorem-ipsum-generator/locales/en.yml new file mode 100644 index 00000000..9f4aa605 --- /dev/null +++ b/src/tools/lorem-ipsum-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + lorem-ipsum-generator: + title: Lorem ipsum generator + description: Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document or a typeface without relying on meaningful content diff --git a/src/tools/mac-address-generator/index.ts b/src/tools/mac-address-generator/index.ts index 9d20fb69..3106bcec 100644 --- a/src/tools/mac-address-generator/index.ts +++ b/src/tools/mac-address-generator/index.ts @@ -1,10 +1,11 @@ import { Devices } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'MAC address generator', + name: translate('tools.mac-address-generator.title'), path: '/mac-address-generator', - description: 'Enter the quantity and prefix. MAC addresses will be generated in your chosen case (uppercase or lowercase)', + description: translate('tools.mac-address-generator.description'), keywords: ['mac', 'address', 'generator', 'random', 'prefix'], component: () => import('./mac-address-generator.vue'), icon: Devices, diff --git a/src/tools/mac-address-generator/locales/en.yml b/src/tools/mac-address-generator/locales/en.yml new file mode 100644 index 00000000..c24d7337 --- /dev/null +++ b/src/tools/mac-address-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + mac-address-generator: + title: MAC address generator + description: Enter the quantity and prefix. MAC addresses will be generated in your chosen case (uppercase or lowercase) diff --git a/src/tools/mac-address-lookup/index.ts b/src/tools/mac-address-lookup/index.ts index 4108bc33..367bcebb 100644 --- a/src/tools/mac-address-lookup/index.ts +++ b/src/tools/mac-address-lookup/index.ts @@ -1,10 +1,11 @@ import { Devices } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'MAC address lookup', + name: translate('tools.mac-address-lookup.title'), path: '/mac-address-lookup', - description: 'Find the vendor and manufacturer of a device by its MAC address.', + description: translate('tools.mac-address-lookup.description'), keywords: ['mac', 'address', 'lookup', 'vendor', 'parser', 'manufacturer'], component: () => import('./mac-address-lookup.vue'), icon: Devices, diff --git a/src/tools/mac-address-lookup/locales/en.yml b/src/tools/mac-address-lookup/locales/en.yml new file mode 100644 index 00000000..761b739e --- /dev/null +++ b/src/tools/mac-address-lookup/locales/en.yml @@ -0,0 +1,4 @@ +tools: + mac-address-lookup: + title: MAC address lookup + description: Find the vendor and manufacturer of a device by its MAC address. diff --git a/src/tools/math-evaluator/index.ts b/src/tools/math-evaluator/index.ts index 8bf5ce2d..eb4290ba 100644 --- a/src/tools/math-evaluator/index.ts +++ b/src/tools/math-evaluator/index.ts @@ -1,10 +1,11 @@ import { Math } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Math evaluator', + name: translate('tools.math-evaluator.title'), path: '/math-evaluator', - description: 'A calculator for evaluating mathematical expressions. You can use functions like sqrt, cos, sin, abs, etc.', + description: translate('tools.math-evaluator.description'), keywords: [ 'math', 'evaluator', diff --git a/src/tools/math-evaluator/locales/en.yml b/src/tools/math-evaluator/locales/en.yml new file mode 100644 index 00000000..3c27f469 --- /dev/null +++ b/src/tools/math-evaluator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + math-evaluator: + title: Math evaluator + description: A calculator for evaluating mathematical expressions. You can use functions like sqrt, cos, sin, abs, etc. diff --git a/src/tools/meta-tag-generator/index.ts b/src/tools/meta-tag-generator/index.ts index c79b19f3..c6224410 100644 --- a/src/tools/meta-tag-generator/index.ts +++ b/src/tools/meta-tag-generator/index.ts @@ -1,10 +1,11 @@ import { Tags } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Open graph meta generator', + name: translate('tools.og-meta-generator.title'), path: '/og-meta-generator', - description: 'Generate open-graph and socials html meta tags for your website.', + description: translate('tools.og-meta-generator.description'), keywords: [ 'meta', 'tag', diff --git a/src/tools/meta-tag-generator/locales/en.yml b/src/tools/meta-tag-generator/locales/en.yml new file mode 100644 index 00000000..532d8a6f --- /dev/null +++ b/src/tools/meta-tag-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + og-meta-generator: + title: Open graph meta generator + description: Generate open-graph and socials html meta tags for your website. diff --git a/src/tools/mime-types/index.ts b/src/tools/mime-types/index.ts index 25e56404..da6ba0c4 100644 --- a/src/tools/mime-types/index.ts +++ b/src/tools/mime-types/index.ts @@ -1,10 +1,11 @@ import { World } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Mime types', + name: translate('tools.mime-types.title'), path: '/mime-types', - description: 'Convert mime types to extensions and vice-versa.', + description: translate('tools.mime-types.description'), keywords: ['mime', 'types', 'extension', 'content', 'type'], component: () => import('./mime-types.vue'), icon: World, diff --git a/src/tools/mime-types/locales/en.yml b/src/tools/mime-types/locales/en.yml new file mode 100644 index 00000000..357af31e --- /dev/null +++ b/src/tools/mime-types/locales/en.yml @@ -0,0 +1,4 @@ +tools: + mime-types: + title: Mime types + description: Convert mime types to extensions and vice-versa. diff --git a/src/tools/numeronym-generator/index.ts b/src/tools/numeronym-generator/index.ts index 19686922..3d8472ae 100644 --- a/src/tools/numeronym-generator/index.ts +++ b/src/tools/numeronym-generator/index.ts @@ -1,10 +1,11 @@ import { defineTool } from '../tool'; import n7mIcon from './n7m-icon.svg?component'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Numeronym generator', + name: translate('tools.numeronym-generator.title'), path: '/numeronym-generator', - description: 'A numeronym is a word where a number is used to form an abbreviation. For example, "i18n" is a numeronym of "internationalization" where 18 stands for the number of letters between the first i and the last n in the word.', + description: translate('tools.numeronym-generator.description'), keywords: ['numeronym', 'generator', 'abbreviation', 'i18n', 'a11y', 'l10n'], component: () => import('./numeronym-generator.vue'), icon: n7mIcon, diff --git a/src/tools/numeronym-generator/locales/en.yml b/src/tools/numeronym-generator/locales/en.yml new file mode 100644 index 00000000..ee1a3278 --- /dev/null +++ b/src/tools/numeronym-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + numeronym-generator: + title: Numeronym generator + description: A numeronym is a word where a number is used to form an abbreviation. For example, "i18n" is a numeronym of "internationalization" where 18 stands for the number of letters between the first i and the last n in the word. diff --git a/src/tools/otp-code-generator-and-validator/index.ts b/src/tools/otp-code-generator-and-validator/index.ts index 914368b6..42ecc9fc 100644 --- a/src/tools/otp-code-generator-and-validator/index.ts +++ b/src/tools/otp-code-generator-and-validator/index.ts @@ -1,10 +1,11 @@ import { DeviceMobile } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'OTP code generator', + name: translate('tools.otp-generator.title'), path: '/otp-generator', - description: 'Generate and validate time-based OTP (one time password) for multi-factor authentication.', + description: translate('tools.otp-generator.description'), keywords: [ 'otp', 'code', diff --git a/src/tools/otp-code-generator-and-validator/locales/en.yml b/src/tools/otp-code-generator-and-validator/locales/en.yml new file mode 100644 index 00000000..e6db4d49 --- /dev/null +++ b/src/tools/otp-code-generator-and-validator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + otp-generator: + title: OTP code generator + description: Generate and validate time-based OTP (one time password) for multi-factor authentication. diff --git a/src/tools/password-strength-analyser/index.ts b/src/tools/password-strength-analyser/index.ts index 7b86bdd5..f2e89ef9 100644 --- a/src/tools/password-strength-analyser/index.ts +++ b/src/tools/password-strength-analyser/index.ts @@ -1,10 +1,11 @@ import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; import PasswordIcon from '~icons/mdi/form-textbox-password'; export const tool = defineTool({ - name: 'Password strength analyser', + name: translate('tools.password-strength-analyser.title'), path: '/password-strength-analyser', - description: 'Discover the strength of your password with this client side only password strength analyser and crack time estimation tool.', + description: translate('tools.password-strength-analyser.description'), keywords: ['password', 'strength', 'analyser', 'and', 'crack', 'time', 'estimation', 'brute', 'force', 'attack', 'entropy', 'cracking', 'hash', 'hashing', 'algorithm', 'algorithms', 'md5', 'sha1', 'sha256', 'sha512', 'bcrypt', 'scrypt', 'argon2', 'argon2id', 'argon2i', 'argon2d'], component: () => import('./password-strength-analyser.vue'), icon: PasswordIcon, diff --git a/src/tools/password-strength-analyser/locales/en.yml b/src/tools/password-strength-analyser/locales/en.yml new file mode 100644 index 00000000..306bf182 --- /dev/null +++ b/src/tools/password-strength-analyser/locales/en.yml @@ -0,0 +1,4 @@ +tools: + password-strength-analyser: + title: Password strength analyser + description: Discover the strength of your password with this client side only password strength analyser and crack time estimation tool. diff --git a/src/tools/pdf-signature-checker/index.ts b/src/tools/pdf-signature-checker/index.ts index 54563979..8b5d356b 100644 --- a/src/tools/pdf-signature-checker/index.ts +++ b/src/tools/pdf-signature-checker/index.ts @@ -1,10 +1,11 @@ import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; import FileCertIcon from '~icons/mdi/file-certificate-outline'; export const tool = defineTool({ - name: 'PDF signature checker', + name: translate('tools.pdf-signature-checker.title'), path: '/pdf-signature-checker', - description: 'Verify the signatures of a PDF file. A signed PDF file contains one or more signatures that may be used to determine whether the contents of the file have been altered since the file was signed.', + description: translate('tools.pdf-signature-checker.description'), keywords: ['pdf', 'signature', 'checker', 'verify', 'validate', 'sign'], component: () => import('./pdf-signature-checker.vue'), icon: FileCertIcon, diff --git a/src/tools/pdf-signature-checker/locales/en.yml b/src/tools/pdf-signature-checker/locales/en.yml new file mode 100644 index 00000000..e856db11 --- /dev/null +++ b/src/tools/pdf-signature-checker/locales/en.yml @@ -0,0 +1,4 @@ +tools: + pdf-signature-checker: + title: PDF signature checker + description: Verify the signatures of a PDF file. A signed PDF file contains one or more signatures that may be used to determine whether the contents of the file have been altered since the file was signed. diff --git a/src/tools/percentage-calculator/index.ts b/src/tools/percentage-calculator/index.ts index 736f5706..33c5b2f1 100644 --- a/src/tools/percentage-calculator/index.ts +++ b/src/tools/percentage-calculator/index.ts @@ -1,10 +1,11 @@ import { Percentage } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Percentage calculator', + name: translate('tools.percentage-calculator.title'), path: '/percentage-calculator', - description: 'Easily calculate percentages from a value to another value, or from a percentage to a value.', + description: translate('tools.percentage-calculator.description'), keywords: ['percentage', 'calculator', 'calculate', 'value', 'number', '%'], component: () => import('./percentage-calculator.vue'), icon: Percentage, diff --git a/src/tools/percentage-calculator/locales/en.yml b/src/tools/percentage-calculator/locales/en.yml new file mode 100644 index 00000000..e46e69f6 --- /dev/null +++ b/src/tools/percentage-calculator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + percentage-calculator: + title: Percentage calculator + description: Easily calculate percentages from a value to another value, or from a percentage to a value. diff --git a/src/tools/phone-parser-and-formatter/index.ts b/src/tools/phone-parser-and-formatter/index.ts index 5b19ae61..094b21e8 100644 --- a/src/tools/phone-parser-and-formatter/index.ts +++ b/src/tools/phone-parser-and-formatter/index.ts @@ -1,11 +1,11 @@ import { Phone } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Phone parser and formatter', + name: translate('tools.phone-parser-and-formatter.title'), path: '/phone-parser-and-formatter', - description: - 'Parse, validate and format phone numbers. Get information about the phone number, like the country code, type, etc.', + description: translate('tools.phone-parser-and-formatter.description'), keywords: [ 'phone', 'parser', diff --git a/src/tools/phone-parser-and-formatter/locales/en.yml b/src/tools/phone-parser-and-formatter/locales/en.yml new file mode 100644 index 00000000..c45b1859 --- /dev/null +++ b/src/tools/phone-parser-and-formatter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + phone-parser-and-formatter: + title: Phone parser and formatter + description: Parse, validate and format phone numbers. Get information about the phone number, like the country code, type, etc. diff --git a/src/tools/qr-code-generator/index.ts b/src/tools/qr-code-generator/index.ts index 4c2f86bb..b97b4cbc 100644 --- a/src/tools/qr-code-generator/index.ts +++ b/src/tools/qr-code-generator/index.ts @@ -1,11 +1,11 @@ import { Qrcode } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'QR Code generator', + name: translate('tools.qrcode-generator.title'), path: '/qrcode-generator', - description: - 'Generate and download QR-code for an url or just a text and customize the background and foreground colors.', + description: translate('tools.qrcode-generator.description'), keywords: ['qr', 'code', 'generator', 'square', 'color', 'link', 'low', 'medium', 'quartile', 'high', 'transparent'], component: () => import('./qr-code-generator.vue'), icon: Qrcode, diff --git a/src/tools/qr-code-generator/locales/en.yml b/src/tools/qr-code-generator/locales/en.yml new file mode 100644 index 00000000..aefd6b0a --- /dev/null +++ b/src/tools/qr-code-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + qrcode-generator: + title: QR Code generator + description: Generate and download QR-code for an url or just a text and customize the background and foreground colors. diff --git a/src/tools/random-port-generator/index.ts b/src/tools/random-port-generator/index.ts index febdc2a4..e300b8f0 100644 --- a/src/tools/random-port-generator/index.ts +++ b/src/tools/random-port-generator/index.ts @@ -1,10 +1,11 @@ import { Server } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Random port generator', + name: translate('tools.random-port-generator.title'), path: '/random-port-generator', - description: 'Generate random port numbers outside of the range of "known" ports (0-1023).', + description: translate('tools.random-port-generator.description'), keywords: ['system', 'port', 'lan', 'generator', 'random', 'development', 'computer'], component: () => import('./random-port-generator.vue'), icon: Server, diff --git a/src/tools/random-port-generator/locales/en.yml b/src/tools/random-port-generator/locales/en.yml new file mode 100644 index 00000000..7cf57142 --- /dev/null +++ b/src/tools/random-port-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + random-port-generator: + title: Random port generator + description: Generate random port numbers outside of the range of "known" ports (0-1023). diff --git a/src/tools/roman-numeral-converter/index.ts b/src/tools/roman-numeral-converter/index.ts index f2dbdc0a..6929747f 100644 --- a/src/tools/roman-numeral-converter/index.ts +++ b/src/tools/roman-numeral-converter/index.ts @@ -1,10 +1,11 @@ import { LetterX } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Roman numeral converter', + name: translate('tools.roman-numeral-converter.title'), path: '/roman-numeral-converter', - description: 'Convert Roman numerals to numbers and convert numbers to Roman numerals.', + description: translate('tools.roman-numeral-converter.description'), keywords: ['roman', 'arabic', 'converter', 'X', 'I', 'V', 'L', 'C', 'D', 'M'], component: () => import('./roman-numeral-converter.vue'), icon: LetterX, diff --git a/src/tools/roman-numeral-converter/locales/en.yml b/src/tools/roman-numeral-converter/locales/en.yml new file mode 100644 index 00000000..85c7bed9 --- /dev/null +++ b/src/tools/roman-numeral-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + roman-numeral-converter: + title: Roman numeral converter + description: Convert Roman numerals to numbers and convert numbers to Roman numerals. diff --git a/src/tools/rsa-key-pair-generator/index.ts b/src/tools/rsa-key-pair-generator/index.ts index c8ab4cdb..3d034e5b 100644 --- a/src/tools/rsa-key-pair-generator/index.ts +++ b/src/tools/rsa-key-pair-generator/index.ts @@ -1,10 +1,11 @@ import { Certificate } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'RSA key pair generator', + name: translate('tools.rsa-key-pair-generator.title'), path: '/rsa-key-pair-generator', - description: 'Generate new random RSA private and public key pem certificates.', + description: translate('tools.rsa-key-pair-generator.description'), keywords: ['rsa', 'key', 'pair', 'generator', 'public', 'private', 'secret', 'ssh', 'pem'], component: () => import('./rsa-key-pair-generator.vue'), icon: Certificate, diff --git a/src/tools/rsa-key-pair-generator/locales/en.yml b/src/tools/rsa-key-pair-generator/locales/en.yml new file mode 100644 index 00000000..a6c7056a --- /dev/null +++ b/src/tools/rsa-key-pair-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + rsa-key-pair-generator: + title: RSA key pair generator + description: Generate new random RSA private and public key pem certificates. diff --git a/src/tools/slugify-string/index.ts b/src/tools/slugify-string/index.ts index 8dabcdb1..1f1bfcf3 100644 --- a/src/tools/slugify-string/index.ts +++ b/src/tools/slugify-string/index.ts @@ -1,10 +1,11 @@ import { AbcRound } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Slugify string', + name: translate('tools.slugify-string.title'), path: '/slugify-string', - description: 'Make a string url, filename and id safe.', + description: translate('tools.slugify-string.description'), keywords: ['slugify', 'string', 'escape', 'emoji', 'special', 'character', 'space', 'trim'], component: () => import('./slugify-string.vue'), icon: AbcRound, diff --git a/src/tools/slugify-string/locales/en.yml b/src/tools/slugify-string/locales/en.yml new file mode 100644 index 00000000..7161b20d --- /dev/null +++ b/src/tools/slugify-string/locales/en.yml @@ -0,0 +1,4 @@ +tools: + slugify-string: + title: Slugify string + description: Make a string url, filename and id safe. diff --git a/src/tools/sql-prettify/index.ts b/src/tools/sql-prettify/index.ts index 426845fb..96bff0fe 100644 --- a/src/tools/sql-prettify/index.ts +++ b/src/tools/sql-prettify/index.ts @@ -1,10 +1,11 @@ import { Database } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'SQL prettify and format', + name: translate('tools.sql-prettify.title'), path: '/sql-prettify', - description: 'Format and prettify your SQL queries online (it supports various SQL dialects).', + description: translate('tools.sql-prettify.description'), keywords: [ 'sql', 'prettify', diff --git a/src/tools/sql-prettify/locales/en.yml b/src/tools/sql-prettify/locales/en.yml new file mode 100644 index 00000000..70847404 --- /dev/null +++ b/src/tools/sql-prettify/locales/en.yml @@ -0,0 +1,4 @@ +tools: + sql-prettify: + title: SQL prettify and format + description: Format and prettify your SQL queries online (it supports various SQL dialects). diff --git a/src/tools/string-obfuscator/index.ts b/src/tools/string-obfuscator/index.ts index d5b45318..67f1995c 100644 --- a/src/tools/string-obfuscator/index.ts +++ b/src/tools/string-obfuscator/index.ts @@ -1,10 +1,11 @@ import { EyeOff } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'String obfuscator', + name: translate('tools.string-obfuscator.title'), path: '/string-obfuscator', - description: 'Obfuscate a string (like a secret, an IBAN, or a token) to make it shareable and identifiable without revealing its content.', + description: translate('tools.string-obfuscator.description'), keywords: ['string', 'obfuscator', 'secret', 'token', 'hide', 'obscure', 'mask', 'masking'], component: () => import('./string-obfuscator.vue'), icon: EyeOff, diff --git a/src/tools/string-obfuscator/locales/en.yml b/src/tools/string-obfuscator/locales/en.yml new file mode 100644 index 00000000..d26e0840 --- /dev/null +++ b/src/tools/string-obfuscator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + string-obfuscator: + title: String obfuscator + description: Obfuscate a string (like a secret, an IBAN, or a token) to make it shareable and identifiable without revealing its content. diff --git a/src/tools/svg-placeholder-generator/index.ts b/src/tools/svg-placeholder-generator/index.ts index d676294c..37a709eb 100644 --- a/src/tools/svg-placeholder-generator/index.ts +++ b/src/tools/svg-placeholder-generator/index.ts @@ -1,10 +1,11 @@ import { ImageOutlined } from '@vicons/material'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'SVG placeholder generator', + name: translate('tools.svg-placeholder-generator.title'), path: '/svg-placeholder-generator', - description: 'Generate svg images to use as placeholder in your applications.', + description: translate('tools.svg-placeholder-generator.description'), keywords: ['svg', 'placeholder', 'generator', 'image', 'size', 'mockup'], component: () => import('./svg-placeholder-generator.vue'), icon: ImageOutlined, diff --git a/src/tools/svg-placeholder-generator/locales/en.yml b/src/tools/svg-placeholder-generator/locales/en.yml new file mode 100644 index 00000000..7884cb61 --- /dev/null +++ b/src/tools/svg-placeholder-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + svg-placeholder-generator: + title: SVG placeholder generator + description: Generate svg images to use as placeholder in your applications. diff --git a/src/tools/temperature-converter/index.ts b/src/tools/temperature-converter/index.ts index 60192b41..3f526ee2 100644 --- a/src/tools/temperature-converter/index.ts +++ b/src/tools/temperature-converter/index.ts @@ -1,11 +1,11 @@ import { Temperature } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Temperature converter', + name: translate('tools.temperature-converter.title'), path: '/temperature-converter', - description: - 'Temperature degrees conversions for Kelvin, Celsius, Fahrenheit, Rankine, Delisle, Newton, Réaumur and Rømer.', + description: translate('tools.temperature-converter.description'), keywords: [ 'temperature', 'converter', diff --git a/src/tools/temperature-converter/locales/en.yml b/src/tools/temperature-converter/locales/en.yml new file mode 100644 index 00000000..8b3ae991 --- /dev/null +++ b/src/tools/temperature-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + temperature-converter: + title: Temperature converter + description: Temperature degrees conversions for Kelvin, Celsius, Fahrenheit, Rankine, Delisle, Newton, Réaumur and Rømer. diff --git a/src/tools/text-diff/index.ts b/src/tools/text-diff/index.ts index 992acbae..de124ee6 100644 --- a/src/tools/text-diff/index.ts +++ b/src/tools/text-diff/index.ts @@ -1,10 +1,11 @@ import { FileDiff } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Text diff', + name: translate('tools.text-diff.title'), path: '/text-diff', - description: 'Compare two texts and see the differences between them.', + description: translate('tools.text-diff.description'), keywords: ['text', 'diff', 'compare', 'string', 'text diff', 'code'], component: () => import('./text-diff.vue'), icon: FileDiff, diff --git a/src/tools/text-diff/locales/en.yml b/src/tools/text-diff/locales/en.yml new file mode 100644 index 00000000..3fe95732 --- /dev/null +++ b/src/tools/text-diff/locales/en.yml @@ -0,0 +1,4 @@ +tools: + text-diff: + title: Text diff + description: Compare two texts and see the differences between them. diff --git a/src/tools/text-statistics/index.ts b/src/tools/text-statistics/index.ts index 0e54b71b..23937839 100644 --- a/src/tools/text-statistics/index.ts +++ b/src/tools/text-statistics/index.ts @@ -1,10 +1,11 @@ import { FileText } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Text statistics', + name: translate('tools.text-statistics.title'), path: '/text-statistics', - description: 'Get information about a text, the amount of characters, the amount of words, it\'s size, ...', + description: translate('tools.text-statistics.description'), keywords: ['text', 'statistics', 'length', 'characters', 'count', 'size', 'bytes'], component: () => import('./text-statistics.vue'), icon: FileText, diff --git a/src/tools/text-statistics/locales/en.yml b/src/tools/text-statistics/locales/en.yml new file mode 100644 index 00000000..cc9d3e58 --- /dev/null +++ b/src/tools/text-statistics/locales/en.yml @@ -0,0 +1,4 @@ +tools: + text-statistics: + title: Text statistics + description: Get information about a text, the amount of characters, the amount of words, it\'s size, ... diff --git a/src/tools/text-to-binary/index.ts b/src/tools/text-to-binary/index.ts index 40ac93d6..ce0f87ea 100644 --- a/src/tools/text-to-binary/index.ts +++ b/src/tools/text-to-binary/index.ts @@ -1,10 +1,11 @@ import { Binary } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Text to ASCII binary', + name: translate('tools.text-to-binary.title'), path: '/text-to-binary', - description: 'Convert text to its ASCII binary representation and vice versa.', + description: translate('tools.text-to-binary.description'), keywords: ['text', 'to', 'binary', 'converter', 'encode', 'decode', 'ascii'], component: () => import('./text-to-binary.vue'), icon: Binary, diff --git a/src/tools/text-to-binary/locales/en.yml b/src/tools/text-to-binary/locales/en.yml new file mode 100644 index 00000000..7650b945 --- /dev/null +++ b/src/tools/text-to-binary/locales/en.yml @@ -0,0 +1,4 @@ +tools: + text-to-binary: + title: Text to ASCII binary + description: Convert text to its ASCII binary representation and vice versa. diff --git a/src/tools/text-to-nato-alphabet/index.ts b/src/tools/text-to-nato-alphabet/index.ts index 100476a0..43b72fb4 100644 --- a/src/tools/text-to-nato-alphabet/index.ts +++ b/src/tools/text-to-nato-alphabet/index.ts @@ -1,10 +1,11 @@ import { Speakerphone } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Text to NATO alphabet', + name: translate('tools.text-to-nato-alphabet.title'), path: '/text-to-nato-alphabet', - description: 'Transform text into NATO phonetic alphabet for oral transmission.', + description: translate('tools.text-to-nato-alphabet.description'), keywords: ['string', 'nato', 'alphabet', 'phonetic', 'oral', 'transmission'], component: () => import('./text-to-nato-alphabet.vue'), icon: Speakerphone, diff --git a/src/tools/text-to-nato-alphabet/locales/en.yml b/src/tools/text-to-nato-alphabet/locales/en.yml new file mode 100644 index 00000000..90ee1642 --- /dev/null +++ b/src/tools/text-to-nato-alphabet/locales/en.yml @@ -0,0 +1,4 @@ +tools: + text-to-nato-alphabet: + title: Text to NATO alphabet + description: Transform text into NATO phonetic alphabet for oral transmission. diff --git a/src/tools/text-to-unicode/index.ts b/src/tools/text-to-unicode/index.ts index 885cfc99..80396026 100644 --- a/src/tools/text-to-unicode/index.ts +++ b/src/tools/text-to-unicode/index.ts @@ -1,10 +1,11 @@ import { TextWrap } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Text to Unicode', + name: translate('tools.text-to-unicode.title'), path: '/text-to-unicode', - description: 'Parse and convert text to unicode and vice-versa', + description: translate('tools.text-to-unicode.description'), keywords: ['text', 'to', 'unicode'], component: () => import('./text-to-unicode.vue'), icon: TextWrap, diff --git a/src/tools/text-to-unicode/locales/en.yml b/src/tools/text-to-unicode/locales/en.yml new file mode 100644 index 00000000..a5a90494 --- /dev/null +++ b/src/tools/text-to-unicode/locales/en.yml @@ -0,0 +1,4 @@ +tools: + text-to-unicode: + title: Text to Unicode + description: Parse and convert text to unicode and vice-versa diff --git a/src/tools/toml-to-json/index.ts b/src/tools/toml-to-json/index.ts index 653b432f..77a1b26e 100644 --- a/src/tools/toml-to-json/index.ts +++ b/src/tools/toml-to-json/index.ts @@ -1,11 +1,12 @@ import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; import BracketIcon from '~icons/mdi/code-brackets'; export const tool = defineTool({ - name: 'TOML to JSON', + name: translate('tools.toml-to-json.title'), path: '/toml-to-json', - description: 'Parse and convert TOML to JSON.', + description: translate('tools.toml-to-json.description'), keywords: ['toml', 'json', 'convert', 'online', 'transform', 'parser'], component: () => import('./toml-to-json.vue'), icon: BracketIcon, diff --git a/src/tools/toml-to-json/locales/en.yml b/src/tools/toml-to-json/locales/en.yml new file mode 100644 index 00000000..87f635dc --- /dev/null +++ b/src/tools/toml-to-json/locales/en.yml @@ -0,0 +1,4 @@ +tools: + toml-to-json: + title: TOML to JSON + description: Parse and convert TOML to JSON. diff --git a/src/tools/toml-to-yaml/index.ts b/src/tools/toml-to-yaml/index.ts index 69f9459c..2ee0958b 100644 --- a/src/tools/toml-to-yaml/index.ts +++ b/src/tools/toml-to-yaml/index.ts @@ -1,10 +1,11 @@ import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; import BracketIcon from '~icons/mdi/code-brackets'; export const tool = defineTool({ - name: 'TOML to YAML', + name: translate('tools.toml-to-yaml.title'), path: '/toml-to-yaml', - description: 'Parse and convert TOML to YAML.', + description: translate('tools.toml-to-yaml.description'), keywords: ['toml', 'yaml', 'convert', 'online', 'transform', 'parse'], component: () => import('./toml-to-yaml.vue'), icon: BracketIcon, diff --git a/src/tools/toml-to-yaml/locales/en.yml b/src/tools/toml-to-yaml/locales/en.yml new file mode 100644 index 00000000..f66679b3 --- /dev/null +++ b/src/tools/toml-to-yaml/locales/en.yml @@ -0,0 +1,4 @@ +tools: + toml-to-yaml: + title: TOML to YAML + description: Parse and convert TOML to YAML. diff --git a/src/tools/ulid-generator/index.ts b/src/tools/ulid-generator/index.ts index 6a5408dd..c12679a7 100644 --- a/src/tools/ulid-generator/index.ts +++ b/src/tools/ulid-generator/index.ts @@ -1,10 +1,11 @@ import { SortDescendingNumbers } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'ULID generator', + name: translate('tools.ulid-generator.title'), path: '/ulid-generator', - description: 'Generate random Universally Unique Lexicographically Sortable Identifier (ULID).', + description: translate('tools.ulid-generator.description'), keywords: ['ulid', 'generator', 'random', 'id', 'alphanumeric', 'identity', 'token', 'string', 'identifier', 'unique'], component: () => import('./ulid-generator.vue'), icon: SortDescendingNumbers, diff --git a/src/tools/ulid-generator/locales/en.yml b/src/tools/ulid-generator/locales/en.yml new file mode 100644 index 00000000..182998e6 --- /dev/null +++ b/src/tools/ulid-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + ulid-generator: + title: ULID generator + description: Generate random Universally Unique Lexicographically Sortable Identifier (ULID). diff --git a/src/tools/url-encoder/index.ts b/src/tools/url-encoder/index.ts index bd19b890..ab85118c 100644 --- a/src/tools/url-encoder/index.ts +++ b/src/tools/url-encoder/index.ts @@ -1,10 +1,11 @@ import { Link } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Encode/decode url formatted strings', + name: translate('tools.url-encoder.title'), path: '/url-encoder', - description: 'Encode to url-encoded format (also known as "percent-encoded") or decode from it.', + description: translate('tools.url-encoder.description'), keywords: ['url', 'encode', 'decode', 'percent', '%20', 'format'], component: () => import('./url-encoder.vue'), icon: Link, diff --git a/src/tools/url-encoder/locales/en.yml b/src/tools/url-encoder/locales/en.yml new file mode 100644 index 00000000..bbeca37e --- /dev/null +++ b/src/tools/url-encoder/locales/en.yml @@ -0,0 +1,4 @@ +tools: + url-encoder: + title: Encode/decode url formatted strings + description: Encode to url-encoded format (also known as "percent-encoded") or decode from it. diff --git a/src/tools/url-parser/index.ts b/src/tools/url-parser/index.ts index d1c8dfe8..77976a24 100644 --- a/src/tools/url-parser/index.ts +++ b/src/tools/url-parser/index.ts @@ -1,11 +1,11 @@ import { Unlink } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'Url parser', + name: translate('tools.url-parser.title'), path: '/url-parser', - description: - 'Parse an url string to get all the different parts (protocol, origin, params, port, username-password, ...)', + description: translate('tools.url-parser.description'), keywords: ['url', 'parser', 'protocol', 'origin', 'params', 'port', 'username', 'password', 'href'], component: () => import('./url-parser.vue'), icon: Unlink, diff --git a/src/tools/url-parser/locales/en.yml b/src/tools/url-parser/locales/en.yml new file mode 100644 index 00000000..1ebc0e9c --- /dev/null +++ b/src/tools/url-parser/locales/en.yml @@ -0,0 +1,4 @@ +tools: + url-parser: + title: Url parser + description: Parse an url string to get all the different parts (protocol, origin, params, port, username-password, ...) diff --git a/src/tools/user-agent-parser/index.ts b/src/tools/user-agent-parser/index.ts index 1ae05d14..4d026145 100644 --- a/src/tools/user-agent-parser/index.ts +++ b/src/tools/user-agent-parser/index.ts @@ -1,10 +1,11 @@ import { Browser } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'User-agent parser', + name: translate('tools.user-agent-parser.title'), path: '/user-agent-parser', - description: 'Detect and parse Browser, Engine, OS, CPU, and Device type/model from an user-agent string.', + description: translate('tools.user-agent-parser.description'), keywords: ['user', 'agent', 'parser', 'browser', 'engine', 'os', 'cpu', 'device', 'user-agent', 'client'], component: () => import('./user-agent-parser.vue'), icon: Browser, diff --git a/src/tools/user-agent-parser/locales/en.yml b/src/tools/user-agent-parser/locales/en.yml new file mode 100644 index 00000000..8116a38c --- /dev/null +++ b/src/tools/user-agent-parser/locales/en.yml @@ -0,0 +1,4 @@ +tools: + user-agent-parser: + title: User-agent parser + description: Detect and parse Browser, Engine, OS, CPU, and Device type/model from an user-agent string. diff --git a/src/tools/uuid-generator/index.ts b/src/tools/uuid-generator/index.ts index 9289b902..54ec479f 100644 --- a/src/tools/uuid-generator/index.ts +++ b/src/tools/uuid-generator/index.ts @@ -1,11 +1,11 @@ import { Fingerprint } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'UUIDs generator', + name: translate('tools.uuid-generator.title'), path: '/uuid-generator', - description: - 'A Universally Unique Identifier (UUID) is a 128-bit number used to identify information in computer systems. The number of possible UUIDs is 16^32, which is 2^128 or about 3.4x10^38 (which is a lot!).', + description: translate('tools.uuid-generator.description'), keywords: ['uuid', 'v4', 'random', 'id', 'alphanumeric', 'identity', 'token', 'string', 'identifier', 'unique', 'v1', 'v3', 'v5', 'nil'], component: () => import('./uuid-generator.vue'), icon: Fingerprint, diff --git a/src/tools/uuid-generator/locales/en.yml b/src/tools/uuid-generator/locales/en.yml new file mode 100644 index 00000000..b71a71b2 --- /dev/null +++ b/src/tools/uuid-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + uuid-generator: + title: UUIDs generator + description: A Universally Unique Identifier (UUID) is a 128-bit number used to identify information in computer systems. The number of possible UUIDs is 16^32, which is 2^128 or about 3.4x10^38 (which is a lot!). diff --git a/src/tools/wifi-qr-code-generator/index.ts b/src/tools/wifi-qr-code-generator/index.ts index ad0135c3..b59b95df 100644 --- a/src/tools/wifi-qr-code-generator/index.ts +++ b/src/tools/wifi-qr-code-generator/index.ts @@ -1,11 +1,11 @@ import { Qrcode } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'WiFi QR Code generator', + name: translate('tools.wifi-qrcode-generator.title'), path: '/wifi-qrcode-generator', - description: - 'Generate and download QR-codes for quick connections to WiFi networks.', + description: translate('tools.wifi-qrcode-generator.description'), keywords: ['qr', 'code', 'generator', 'square', 'color', 'link', 'low', 'medium', 'quartile', 'high', 'transparent', 'wifi'], component: () => import('./wifi-qr-code-generator.vue'), icon: Qrcode, diff --git a/src/tools/wifi-qr-code-generator/locales/en.yml b/src/tools/wifi-qr-code-generator/locales/en.yml new file mode 100644 index 00000000..7355c85d --- /dev/null +++ b/src/tools/wifi-qr-code-generator/locales/en.yml @@ -0,0 +1,4 @@ +tools: + wifi-qrcode-generator: + title: WiFi QR Code generator + description: Generate and download QR-codes for quick connections to WiFi networks. diff --git a/src/tools/xml-formatter/index.ts b/src/tools/xml-formatter/index.ts index fe28d3ae..7aa096da 100644 --- a/src/tools/xml-formatter/index.ts +++ b/src/tools/xml-formatter/index.ts @@ -1,10 +1,11 @@ import { Code } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'XML formatter', + name: translate('tools.xml-formatter.title'), path: '/xml-formatter', - description: 'Prettify your XML string to a human friendly readable format.', + description: translate('tools.xml-formatter.description'), keywords: ['xml', 'prettify', 'format'], component: () => import('./xml-formatter.vue'), icon: Code, diff --git a/src/tools/xml-formatter/locales/en.yml b/src/tools/xml-formatter/locales/en.yml new file mode 100644 index 00000000..a217f66e --- /dev/null +++ b/src/tools/xml-formatter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + xml-formatter: + title: XML formatter + description: Prettify your XML string to a human friendly readable format. diff --git a/src/tools/yaml-to-json-converter/index.ts b/src/tools/yaml-to-json-converter/index.ts index 724ecdb7..60110f09 100644 --- a/src/tools/yaml-to-json-converter/index.ts +++ b/src/tools/yaml-to-json-converter/index.ts @@ -1,10 +1,11 @@ import { AlignJustified } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'YAML to JSON converter', + name: translate('tools.yaml-to-json-converter.title'), path: '/yaml-to-json-converter', - description: 'Simply convert YAML to JSON with this live online converter.', + description: translate('tools.yaml-to-json-converter.description'), keywords: ['yaml', 'to', 'json'], component: () => import('./yaml-to-json.vue'), icon: AlignJustified, diff --git a/src/tools/yaml-to-json-converter/locales/en.yml b/src/tools/yaml-to-json-converter/locales/en.yml new file mode 100644 index 00000000..2a42303f --- /dev/null +++ b/src/tools/yaml-to-json-converter/locales/en.yml @@ -0,0 +1,4 @@ +tools: + yaml-to-json-converter: + title: YAML to JSON converter + description: Simply convert YAML to JSON with this live online converter. diff --git a/src/tools/yaml-to-toml/index.ts b/src/tools/yaml-to-toml/index.ts index b6a7077f..d788887e 100644 --- a/src/tools/yaml-to-toml/index.ts +++ b/src/tools/yaml-to-toml/index.ts @@ -1,10 +1,11 @@ import { AlignJustified } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'YAML to TOML', + name: translate('tools.yaml-to-toml.title'), path: '/yaml-to-toml', - description: 'Parse and convert YAML to TOML.', + description: translate('tools.yaml-to-toml.description'), keywords: ['yaml', 'to', 'toml', 'convert', 'transform'], component: () => import('./yaml-to-toml.vue'), icon: AlignJustified, diff --git a/src/tools/yaml-to-toml/locales/en.yml b/src/tools/yaml-to-toml/locales/en.yml new file mode 100644 index 00000000..32fd92be --- /dev/null +++ b/src/tools/yaml-to-toml/locales/en.yml @@ -0,0 +1,4 @@ +tools: + yaml-to-toml: + title: YAML to TOML + description: Parse and convert YAML to TOML. diff --git a/src/tools/yaml-viewer/index.ts b/src/tools/yaml-viewer/index.ts index 4ba6ced3..f3043270 100644 --- a/src/tools/yaml-viewer/index.ts +++ b/src/tools/yaml-viewer/index.ts @@ -1,10 +1,11 @@ import { AlignJustified } from '@vicons/tabler'; import { defineTool } from '../tool'; +import { translate } from '@/plugins/i18n.plugin'; export const tool = defineTool({ - name: 'YAML prettify and format', + name: translate('tools.yaml-prettify.title'), path: '/yaml-prettify', - description: 'Prettify your YAML string to a human friendly readable format.', + description: translate('tools.yaml-prettify.description'), keywords: ['yaml', 'viewer', 'prettify', 'format'], component: () => import('./yaml-viewer.vue'), icon: AlignJustified, diff --git a/src/tools/yaml-viewer/locales/en.yml b/src/tools/yaml-viewer/locales/en.yml new file mode 100644 index 00000000..e03db090 --- /dev/null +++ b/src/tools/yaml-viewer/locales/en.yml @@ -0,0 +1,4 @@ +tools: + yaml-prettify: + title: YAML prettify and format + description: Prettify your YAML string to a human friendly readable format. From 1334bff30a8ce3fbd269438de774b5569dbee6ef Mon Sep 17 00:00:00 2001 From: hieudt-2054 <55786352+hieudt-2054@users.noreply.github.com> Date: Thu, 1 Feb 2024 20:47:09 +0700 Subject: [PATCH 02/10] feat(i18n): added vietnamese language (#859) --- locales/vi.yml | 71 +++++++++++++++++++ .../i18n/components/locale-selector.vue | 1 + src/tools/text-to-unicode/text-to-unicode.vue | 4 +- 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 locales/vi.yml diff --git a/locales/vi.yml b/locales/vi.yml new file mode 100644 index 00000000..d3569353 --- /dev/null +++ b/locales/vi.yml @@ -0,0 +1,71 @@ +home: + categories: + newestTools: Công cụ mới nhất + favoriteTools: 'Công cụ yêu thích của bạn' + allTools: 'Tất cả công cụ' + subtitle: 'Công cụ tiện ích cho nhà phát triển' + toggleMenu: 'Chuyển đổi menu' + home: Trang chủ + uiLib: 'Thư viện UI' + support: 'Hỗ trợ phát triển IT Tools' + buyMeACoffee: 'Ủng hộ tác giả' + follow: + title: 'Bạn thích IT-tools?' + p1: 'Hãy cho chúng tôi một ngôi sao trên' + githubRepository: 'Kho GitHub IT-Tools' + p2: 'hoặc theo dõi chúng tôi trên' + twitterAccount: 'Tài khoản Twitter IT-Tools' + thankYou: 'Cảm ơn bạn!' + nav: + github: 'Kho GitHub' + githubRepository: 'Kho GitHub IT-Tools' + twitter: 'Tài khoản Twitter' + twitterAccount: 'Tài khoản Twitter IT Tools' + about: 'Về IT-Tools' + aboutLabel: 'Giới thiệu' + darkMode: 'Chế độ tối' + lightMode: 'Chế độ sáng' + mode: 'Chuyển đổi chế độ tối/sáng' +about: + content: > + # Về IT-Tools + + Website tuyệt vời này, được tạo ra bằng ❤ bởi [Corentin Thomasset](https://github.com/CorentinTh), tổng hợp các công cụ hữu ích cho nhà phát triển và những người làm việc trong lĩnh vực IT. Nếu bạn thấy nó hữu ích, xin đừng ngần ngại chia sẻ cho những người mà bạn nghĩ sẽ thấy nó hữu ích và đừng quên đánh dấu nó trong thanh lối tắt của bạn! + + IT Tools là mã nguồn mở (dưới giấy phép MIT) và miễn phí, và sẽ luôn như vậy, nhưng tôi phải trả tiền để lưu trữ và gia hạn tên miền. Nếu bạn muốn hỗ trợ công việc của tôi, và khích lệ tôi thêm nhiều công cụ hơn, hãy xem xét hỗ trợ bằng cách [tài trợ cho tôi](https://www.buymeacoffee.com/cthmsst). + + ## Công nghệ + + IT Tools được tạo ra bằng Vue.js (Vue 3) với thư viện thành phần Naive UI và được lưu trữ và triển khai liên tục bởi Vercel. Các thư viện mã nguồn mở của bên thứ ba được sử dụng trong một số công cụ, bạn có thể tìm danh sách đầy đủ trong file [package.json](https://github.com/CorentinTh/it-tools/blob/main/package.json) của kho lưu trữ. + + ## Phát hiện lỗi? Một công cụ bị thiếu? + + Nếu bạn cần một công cụ hiện không có ở đây, và bạn nghĩ rằng nó có thể hữu ích, bạn được chào đón để gửi một yêu cầu tính năng trong [phần vấn đề](https://github.com/CorentinTh/it-tools/issues/new/choose) trong kho GitHub. + + Và nếu bạn phát hiện ra một lỗi, hoặc điều gì đó không hoạt động như mong đợi, xin vui lòng gửi báo cáo lỗi trong [phần vấn đề](https://github.com/CorentinTh/it-tools/issues/new/choose) trong kho GitHub. + +404: + notFound: '404 Không Tìm Thấy' + sorry: 'Xin lỗi, trang này dường như không tồn tại' + maybe: 'Có thể bộ nhớ đệm đang làm những điều kỳ lạ, thử làm mới cưỡng bức?' + backHome: 'Quay về trang chủ' +favoriteButton: + remove: 'Xóa khỏi mục yêu thích' + add: 'Thêm vào mục yêu thích' +toolCard: + new: Mới +search: + label: Tìm kiếm +tools: + categories: + favorite-tools: 'Công cụ yêu thích của bạn' + crypto: Crypto + converter: Chuyển đổi + web: Web + images and videos: 'Hình ảnh & Video' + development: Phát triển + network: Mạng + math: Toán học + measurement: Đo lường + text: Văn bản + data: Dữ liệu diff --git a/src/modules/i18n/components/locale-selector.vue b/src/modules/i18n/components/locale-selector.vue index 76b76e63..3f0c461c 100644 --- a/src/modules/i18n/components/locale-selector.vue +++ b/src/modules/i18n/components/locale-selector.vue @@ -9,6 +9,7 @@ const localesLong: Record = { ru: 'Русский', uk: 'Українська', zh: '中文', + vi: 'Tiếng Việt', }; const localeOptions = computed(() => diff --git a/src/tools/text-to-unicode/text-to-unicode.vue b/src/tools/text-to-unicode/text-to-unicode.vue index ae4c6982..be9bed86 100644 --- a/src/tools/text-to-unicode/text-to-unicode.vue +++ b/src/tools/text-to-unicode/text-to-unicode.vue @@ -13,11 +13,11 @@ const { copy: copyText } = useCopy({ source: textFromUnicode });