diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-11-08 14:50:00 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-08 14:50:00 +0000 |
| commit | 99413db0e79a156a1b87eacd3c6a7b83e9df946e (patch) | |
| tree | 73f0a5fceb507f75f662a109b00beeb3fa6b16fb /packages | |
| parent | 737b03172c2e063ba311c23d6552418bd2ab1955 (diff) | |
| download | karakeep-99413db0e79a156a1b87eacd3c6a7b83e9df946e.tar.zst | |
refactor: consolidate multiple karakeep plugins into one package (#2101)
* refactor: consolidate plugin packages into single plugins directory
- Create new `packages/plugins` directory with consolidated package.json
- Move queue-liteque, queue-restate, and search-meilisearch to subdirectories
- Update imports in packages/shared-server/src/plugins.ts
- Remove individual plugin package directories
- Update shared-server dependency to use @karakeep/plugins
This reduces overhead of maintaining multiple separate packages for plugins.
* refactor: consolidate plugin config files to root level
- Move .oxlintrc.json to packages/plugins root
- Move vitest.config.ts to packages/plugins root
- Update vitest config paths to work from root
- Remove individual config files from plugin subdirectories
This reduces configuration duplication across plugin subdirectories.
---------
Co-authored-by: Claude <noreply@anthropic.com>
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/plugins-queue-liteque/package.json | 26 | ||||
| -rw-r--r-- | packages/plugins-queue-liteque/tsconfig.json | 10 | ||||
| -rw-r--r-- | packages/plugins-queue-restate/.oxlintrc.json | 19 | ||||
| -rw-r--r-- | packages/plugins-queue-restate/tsconfig.json | 10 | ||||
| -rw-r--r-- | packages/plugins-search-meilisearch/.oxlintrc.json | 19 | ||||
| -rw-r--r-- | packages/plugins-search-meilisearch/package.json | 26 | ||||
| -rw-r--r-- | packages/plugins/.oxlintrc.json (renamed from packages/plugins-queue-liteque/.oxlintrc.json) | 0 | ||||
| -rw-r--r-- | packages/plugins/package.json (renamed from packages/plugins-queue-restate/package.json) | 11 | ||||
| -rw-r--r-- | packages/plugins/queue-liteque/index.ts (renamed from packages/plugins-queue-liteque/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-liteque/src/index.ts (renamed from packages/plugins-queue-liteque/src/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/index.ts (renamed from packages/plugins-queue-restate/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/admin.ts (renamed from packages/plugins-queue-restate/src/admin.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/env.ts (renamed from packages/plugins-queue-restate/src/env.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/idProvider.ts (renamed from packages/plugins-queue-restate/src/idProvider.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/index.ts (renamed from packages/plugins-queue-restate/src/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/semaphore.ts (renamed from packages/plugins-queue-restate/src/semaphore.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/service.ts (renamed from packages/plugins-queue-restate/src/service.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/tests/docker-compose.yml (renamed from packages/plugins-queue-restate/src/tests/docker-compose.yml) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/tests/queue.test.ts (renamed from packages/plugins-queue-restate/src/tests/queue.test.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/tests/setup/startContainers.ts (renamed from packages/plugins-queue-restate/src/tests/setup/startContainers.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/queue-restate/src/tests/utils.ts (renamed from packages/plugins-queue-restate/src/tests/utils.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/search-meilisearch/index.ts (renamed from packages/plugins-search-meilisearch/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/search-meilisearch/src/env.ts (renamed from packages/plugins-search-meilisearch/src/env.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/search-meilisearch/src/index.ts (renamed from packages/plugins-search-meilisearch/src/index.ts) | 0 | ||||
| -rw-r--r-- | packages/plugins/tsconfig.json (renamed from packages/plugins-search-meilisearch/tsconfig.json) | 0 | ||||
| -rw-r--r-- | packages/plugins/vitest.config.ts (renamed from packages/plugins-queue-restate/vitest.config.ts) | 4 | ||||
| -rw-r--r-- | packages/shared-server/package.json | 4 | ||||
| -rw-r--r-- | packages/shared-server/src/plugins.ts | 6 |
28 files changed, 15 insertions, 120 deletions
diff --git a/packages/plugins-queue-liteque/package.json b/packages/plugins-queue-liteque/package.json deleted file mode 100644 index bb4b1aac..00000000 --- a/packages/plugins-queue-liteque/package.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/package.json", - "name": "@karakeep/plugins-queue-liteque", - "version": "0.1.0", - "private": true, - "type": "module", - "scripts": { - "typecheck": "tsc --noEmit", - "format": "prettier . --cache --ignore-path ../../.prettierignore --check", - "format:fix": "prettier . --cache --ignore-path ../../.prettierignore --write", - "lint": "oxlint .", - "lint:fix": "oxlint . --fix", - "test": "vitest" - }, - "dependencies": { - "@karakeep/shared": "workspace:*", - "liteque": "^0.6.2" - }, - "devDependencies": { - "@karakeep/prettier-config": "workspace:^0.1.0", - "@karakeep/tsconfig": "workspace:^0.1.0", - "vite-tsconfig-paths": "^4.3.1", - "vitest": "^3.2.4" - }, - "prettier": "@karakeep/prettier-config" -} diff --git a/packages/plugins-queue-liteque/tsconfig.json b/packages/plugins-queue-liteque/tsconfig.json deleted file mode 100644 index 3bfa695c..00000000 --- a/packages/plugins-queue-liteque/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "extends": "@karakeep/tsconfig/node.json", - "include": ["**/*.ts"], - "exclude": ["node_modules"], - "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" - } -} - diff --git a/packages/plugins-queue-restate/.oxlintrc.json b/packages/plugins-queue-restate/.oxlintrc.json deleted file mode 100644 index 79ba0255..00000000 --- a/packages/plugins-queue-restate/.oxlintrc.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": [ - "../../tooling/oxlint/oxlint-base.json" - ], - "env": { - "builtin": true, - "commonjs": true - }, - "ignorePatterns": [ - "**/*.config.js", - "**/*.config.cjs", - "**/.eslintrc.cjs", - "**/.next", - "**/dist", - "**/build", - "**/pnpm-lock.yaml" - ] -} diff --git a/packages/plugins-queue-restate/tsconfig.json b/packages/plugins-queue-restate/tsconfig.json deleted file mode 100644 index 3bfa695c..00000000 --- a/packages/plugins-queue-restate/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "extends": "@karakeep/tsconfig/node.json", - "include": ["**/*.ts"], - "exclude": ["node_modules"], - "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" - } -} - diff --git a/packages/plugins-search-meilisearch/.oxlintrc.json b/packages/plugins-search-meilisearch/.oxlintrc.json deleted file mode 100644 index 79ba0255..00000000 --- a/packages/plugins-search-meilisearch/.oxlintrc.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": [ - "../../tooling/oxlint/oxlint-base.json" - ], - "env": { - "builtin": true, - "commonjs": true - }, - "ignorePatterns": [ - "**/*.config.js", - "**/*.config.cjs", - "**/.eslintrc.cjs", - "**/.next", - "**/dist", - "**/build", - "**/pnpm-lock.yaml" - ] -} diff --git a/packages/plugins-search-meilisearch/package.json b/packages/plugins-search-meilisearch/package.json deleted file mode 100644 index c9482731..00000000 --- a/packages/plugins-search-meilisearch/package.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/package.json", - "name": "@karakeep/plugins-search-meilisearch", - "version": "0.1.0", - "private": true, - "type": "module", - "scripts": { - "typecheck": "tsc --noEmit", - "format": "prettier . --cache --ignore-path ../../.prettierignore --check", - "format:fix": "prettier . --cache --ignore-path ../../.prettierignore --write", - "lint": "oxlint .", - "lint:fix": "oxlint . --fix", - "test": "vitest" - }, - "dependencies": { - "@karakeep/shared": "workspace:*", - "meilisearch": "^0.45.0" - }, - "devDependencies": { - "@karakeep/prettier-config": "workspace:^0.1.0", - "@karakeep/tsconfig": "workspace:^0.1.0", - "vite-tsconfig-paths": "^4.3.1", - "vitest": "^3.2.4" - }, - "prettier": "@karakeep/prettier-config" -} diff --git a/packages/plugins-queue-liteque/.oxlintrc.json b/packages/plugins/.oxlintrc.json index 79ba0255..79ba0255 100644 --- a/packages/plugins-queue-liteque/.oxlintrc.json +++ b/packages/plugins/.oxlintrc.json diff --git a/packages/plugins-queue-restate/package.json b/packages/plugins/package.json index 16681150..8b3f73f7 100644 --- a/packages/plugins-queue-restate/package.json +++ b/packages/plugins/package.json @@ -1,9 +1,14 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@karakeep/plugins-queue-restate", + "name": "@karakeep/plugins", "version": "0.1.0", "private": true, "type": "module", + "exports": { + "./queue-liteque": "./queue-liteque/index.ts", + "./queue-restate": "./queue-restate/index.ts", + "./search-meilisearch": "./search-meilisearch/index.ts" + }, "scripts": { "typecheck": "tsc --noEmit", "format": "prettier . --cache --ignore-path ../../.prettierignore --check", @@ -15,7 +20,9 @@ "dependencies": { "@karakeep/shared": "workspace:*", "@restatedev/restate-sdk": "^1.9.0", - "@restatedev/restate-sdk-clients": "^1.9.0" + "@restatedev/restate-sdk-clients": "^1.9.0", + "liteque": "^0.6.2", + "meilisearch": "^0.45.0" }, "devDependencies": { "@karakeep/prettier-config": "workspace:^0.1.0", diff --git a/packages/plugins-queue-liteque/index.ts b/packages/plugins/queue-liteque/index.ts index c3f7f03b..c3f7f03b 100644 --- a/packages/plugins-queue-liteque/index.ts +++ b/packages/plugins/queue-liteque/index.ts diff --git a/packages/plugins-queue-liteque/src/index.ts b/packages/plugins/queue-liteque/src/index.ts index ddc2181c..ddc2181c 100644 --- a/packages/plugins-queue-liteque/src/index.ts +++ b/packages/plugins/queue-liteque/src/index.ts diff --git a/packages/plugins-queue-restate/index.ts b/packages/plugins/queue-restate/index.ts index d313615c..d313615c 100644 --- a/packages/plugins-queue-restate/index.ts +++ b/packages/plugins/queue-restate/index.ts diff --git a/packages/plugins-queue-restate/src/admin.ts b/packages/plugins/queue-restate/src/admin.ts index dddc8f00..dddc8f00 100644 --- a/packages/plugins-queue-restate/src/admin.ts +++ b/packages/plugins/queue-restate/src/admin.ts diff --git a/packages/plugins-queue-restate/src/env.ts b/packages/plugins/queue-restate/src/env.ts index 01175e86..01175e86 100644 --- a/packages/plugins-queue-restate/src/env.ts +++ b/packages/plugins/queue-restate/src/env.ts diff --git a/packages/plugins-queue-restate/src/idProvider.ts b/packages/plugins/queue-restate/src/idProvider.ts index ee85f46f..ee85f46f 100644 --- a/packages/plugins-queue-restate/src/idProvider.ts +++ b/packages/plugins/queue-restate/src/idProvider.ts diff --git a/packages/plugins-queue-restate/src/index.ts b/packages/plugins/queue-restate/src/index.ts index bedc26af..bedc26af 100644 --- a/packages/plugins-queue-restate/src/index.ts +++ b/packages/plugins/queue-restate/src/index.ts diff --git a/packages/plugins-queue-restate/src/semaphore.ts b/packages/plugins/queue-restate/src/semaphore.ts index ad636f98..ad636f98 100644 --- a/packages/plugins-queue-restate/src/semaphore.ts +++ b/packages/plugins/queue-restate/src/semaphore.ts diff --git a/packages/plugins-queue-restate/src/service.ts b/packages/plugins/queue-restate/src/service.ts index de5b070f..de5b070f 100644 --- a/packages/plugins-queue-restate/src/service.ts +++ b/packages/plugins/queue-restate/src/service.ts diff --git a/packages/plugins-queue-restate/src/tests/docker-compose.yml b/packages/plugins/queue-restate/src/tests/docker-compose.yml index f24c2921..f24c2921 100644 --- a/packages/plugins-queue-restate/src/tests/docker-compose.yml +++ b/packages/plugins/queue-restate/src/tests/docker-compose.yml diff --git a/packages/plugins-queue-restate/src/tests/queue.test.ts b/packages/plugins/queue-restate/src/tests/queue.test.ts index e59d47cb..e59d47cb 100644 --- a/packages/plugins-queue-restate/src/tests/queue.test.ts +++ b/packages/plugins/queue-restate/src/tests/queue.test.ts diff --git a/packages/plugins-queue-restate/src/tests/setup/startContainers.ts b/packages/plugins/queue-restate/src/tests/setup/startContainers.ts index 7d9dea5c..7d9dea5c 100644 --- a/packages/plugins-queue-restate/src/tests/setup/startContainers.ts +++ b/packages/plugins/queue-restate/src/tests/setup/startContainers.ts diff --git a/packages/plugins-queue-restate/src/tests/utils.ts b/packages/plugins/queue-restate/src/tests/utils.ts index e02d2dee..e02d2dee 100644 --- a/packages/plugins-queue-restate/src/tests/utils.ts +++ b/packages/plugins/queue-restate/src/tests/utils.ts diff --git a/packages/plugins-search-meilisearch/index.ts b/packages/plugins/search-meilisearch/index.ts index 3496d52f..3496d52f 100644 --- a/packages/plugins-search-meilisearch/index.ts +++ b/packages/plugins/search-meilisearch/index.ts diff --git a/packages/plugins-search-meilisearch/src/env.ts b/packages/plugins/search-meilisearch/src/env.ts index c06fdd55..c06fdd55 100644 --- a/packages/plugins-search-meilisearch/src/env.ts +++ b/packages/plugins/search-meilisearch/src/env.ts diff --git a/packages/plugins-search-meilisearch/src/index.ts b/packages/plugins/search-meilisearch/src/index.ts index 30da4a64..30da4a64 100644 --- a/packages/plugins-search-meilisearch/src/index.ts +++ b/packages/plugins/search-meilisearch/src/index.ts diff --git a/packages/plugins-search-meilisearch/tsconfig.json b/packages/plugins/tsconfig.json index a795b96a..a795b96a 100644 --- a/packages/plugins-search-meilisearch/tsconfig.json +++ b/packages/plugins/tsconfig.json diff --git a/packages/plugins-queue-restate/vitest.config.ts b/packages/plugins/vitest.config.ts index 73e0e1b9..3d5f33f7 100644 --- a/packages/plugins-queue-restate/vitest.config.ts +++ b/packages/plugins/vitest.config.ts @@ -6,9 +6,9 @@ import { defineConfig } from "vitest/config"; export default defineConfig({ plugins: [tsconfigPaths()], test: { - globalSetup: ["./src/tests/setup/startContainers.ts"], + globalSetup: ["./queue-restate/src/tests/setup/startContainers.ts"], teardownTimeout: 30000, - include: ["src/tests/**/*.test.ts"], + include: ["**/src/tests/**/*.test.ts"], testTimeout: 60000, }, }); diff --git a/packages/shared-server/package.json b/packages/shared-server/package.json index d18eb4a0..578c3330 100644 --- a/packages/shared-server/package.json +++ b/packages/shared-server/package.json @@ -6,9 +6,7 @@ "type": "module", "dependencies": { "@karakeep/db": "workspace:^0.1.0", - "@karakeep/plugins-queue-liteque": "workspace:^0.1.0", - "@karakeep/plugins-queue-restate": "workspace:^0.1.0", - "@karakeep/plugins-search-meilisearch": "workspace:^0.1.0", + "@karakeep/plugins": "workspace:^0.1.0", "@karakeep/shared": "workspace:^0.1.0" }, "devDependencies": { diff --git a/packages/shared-server/src/plugins.ts b/packages/shared-server/src/plugins.ts index de08b9b0..97503403 100644 --- a/packages/shared-server/src/plugins.ts +++ b/packages/shared-server/src/plugins.ts @@ -7,9 +7,9 @@ export async function loadAllPlugins() { } // Load plugins here. Order of plugin loading matter. // Queue provider(s) - await import("@karakeep/plugins-queue-liteque"); - await import("@karakeep/plugins-queue-restate"); - await import("@karakeep/plugins-search-meilisearch"); + await import("@karakeep/plugins/queue-liteque"); + await import("@karakeep/plugins/queue-restate"); + await import("@karakeep/plugins/search-meilisearch"); PluginManager.logAllPlugins(); pluginsLoaded = true; } |
