diff --git a/src/tools/index.ts b/src/tools/index.ts
index 388cfaf49..3a7f1d68d 100644
--- a/src/tools/index.ts
+++ b/src/tools/index.ts
@@ -2,6 +2,7 @@ import { tool as base64FileConverter } from './base64-file-converter';
import { tool as base64StringConverter } from './base64-string-converter';
import { tool as basicAuthGenerator } from './basic-auth-generator';
import { tool as emailNormalizer } from './email-normalizer';
+import { tool as jwtGenerator } from './jwt-generator';
import { tool as asciiTextDrawer } from './ascii-text-drawer';
@@ -130,6 +131,7 @@ export const toolsByCategory: ToolCategory[] = [
otpCodeGeneratorAndValidator,
mimeTypes,
jwtParser,
+ jwtGenerator,
keycodeInfo,
slugifyString,
htmlWysiwygEditor,
diff --git a/src/tools/jwt-generator/index.ts b/src/tools/jwt-generator/index.ts
new file mode 100644
index 000000000..0cd2818a7
--- /dev/null
+++ b/src/tools/jwt-generator/index.ts
@@ -0,0 +1,29 @@
+import { Key } from '@vicons/tabler';
+import { defineTool } from '../tool';
+
+export const tool = defineTool({
+ name: 'JWT Generator',
+ path: '/jwt-generator',
+ description: 'JWT Token generator and editor',
+ keywords: [
+ 'jwt',
+ 'generator',
+ 'editor',
+ 'encode',
+ 'typ',
+ 'alg',
+ 'iss',
+ 'sub',
+ 'aud',
+ 'exp',
+ 'nbf',
+ 'iat',
+ 'jti',
+ 'json',
+ 'web',
+ 'token',
+ ],
+ component: () => import('./jwt-generator.vue'),
+ icon: Key,
+ createdAt: new Date('2024-08-15'),
+});
diff --git a/src/tools/jwt-generator/jwt-generator.e2e.spec.ts b/src/tools/jwt-generator/jwt-generator.e2e.spec.ts
new file mode 100644
index 000000000..8fb239fa9
--- /dev/null
+++ b/src/tools/jwt-generator/jwt-generator.e2e.spec.ts
@@ -0,0 +1,15 @@
+import { test, expect } from '@playwright/test';
+
+test.describe('Tool - Jwt generator', () => {
+ test.beforeEach(async ({ page }) => {
+ await page.goto('/jwt-generator');
+ });
+
+ test('Has correct title', async ({ page }) => {
+ await expect(page).toHaveTitle('Jwt generator - IT Tools');
+ });
+
+ test('', async ({ page }) => {
+
+ });
+});
\ No newline at end of file
diff --git a/src/tools/jwt-generator/jwt-generator.service.test.ts b/src/tools/jwt-generator/jwt-generator.service.test.ts
new file mode 100644
index 000000000..97fd5062f
--- /dev/null
+++ b/src/tools/jwt-generator/jwt-generator.service.test.ts
@@ -0,0 +1,6 @@
+import { expect, describe, it } from 'vitest';
+// import { } from './jwt-generator.service';
+//
+// describe('jwt-generator', () => {
+//
+// })
\ No newline at end of file
diff --git a/src/tools/jwt-generator/jwt-generator.service.ts b/src/tools/jwt-generator/jwt-generator.service.ts
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/tools/jwt-generator/jwt-generator.vue b/src/tools/jwt-generator/jwt-generator.vue
new file mode 100644
index 000000000..71f903865
--- /dev/null
+++ b/src/tools/jwt-generator/jwt-generator.vue
@@ -0,0 +1,12 @@
+
+
+ Lorem ipsum
+
+
+
+
+
+
\ No newline at end of file