aboutsummaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-11-08 14:50:00 +0000
committerGitHub <noreply@github.com>2025-11-08 14:50:00 +0000
commit99413db0e79a156a1b87eacd3c6a7b83e9df946e (patch)
tree73f0a5fceb507f75f662a109b00beeb3fa6b16fb /packages
parent737b03172c2e063ba311c23d6552418bd2ab1955 (diff)
downloadkarakeep-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.json26
-rw-r--r--packages/plugins-queue-liteque/tsconfig.json10
-rw-r--r--packages/plugins-queue-restate/.oxlintrc.json19
-rw-r--r--packages/plugins-queue-restate/tsconfig.json10
-rw-r--r--packages/plugins-search-meilisearch/.oxlintrc.json19
-rw-r--r--packages/plugins-search-meilisearch/package.json26
-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.json4
-rw-r--r--packages/shared-server/src/plugins.ts6
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;
}