@libredb/studio 0.9.13 → 0.9.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +18 -4
  2. package/package.json +10 -5
package/README.md CHANGED
@@ -205,12 +205,14 @@ docker run -d \
205
205
  ghcr.io/libredb/libredb-studio:latest
206
206
  ```
207
207
 
208
+ > **Registry**: `ghcr.io/libredb/libredb-studio` is the primary image (no pull rate limits — preferred for Kubernetes/CI). The same image is also mirrored to Docker Hub as [`libredb/libredb-studio`](https://hub.docker.com/r/libredb/libredb-studio) for convenience.
209
+
208
210
  Open [http://localhost:3000](http://localhost:3000) and login with `admin@libredb.org` / `LibreDB.2026`.
209
211
 
210
212
  > **Tip**: Add `-e LLM_PROVIDER=gemini -e LLM_API_KEY=your_key -e LLM_MODEL=gemini-2.5-flash` to enable AI features.
211
213
 
212
214
  ### Prerequisites
213
- - [Bun](https://bun.sh/) (Recommended) or Node.js 20+
215
+ - [Bun](https://bun.sh/) (Recommended) or Node.js 24+
214
216
  - A target database to query (PostgreSQL, MySQL, Oracle, SQL Server, SQLite, MongoDB, or Redis)
215
217
 
216
218
  ### Quick Start (Local)
@@ -409,10 +411,23 @@ LibreDB Studio includes a `render.yaml` Blueprint for one-click deployment:
409
411
 
410
412
  ### Docker Compose (Self-Hosted)
411
413
 
414
+ Use the ready-to-use [`docker-compose.example.yml`](docker-compose.example.yml) — it pulls the published image (`ghcr.io/libredb/libredb-studio:latest`), so no source build is needed. It documents every supported environment variable (auth, OIDC, storage, LLM, seed connections), with the less-common ones commented out.
415
+
412
416
  ```bash
413
- docker-compose up -d
417
+ # 1. Copy the ready-to-use compose file
418
+ cp docker-compose.example.yml docker-compose.yml
419
+
420
+ # 2. Create your .env (set at least JWT_SECRET / ADMIN_PASSWORD / USER_PASSWORD)
421
+ cp .env.example .env
422
+
423
+ # 3. Start
424
+ docker compose up -d # → http://localhost:3000
414
425
  ```
415
426
 
427
+ This file is platform-neutral and works with PaaS tools that consume a plain `docker-compose.yml` (Dokploy, Coolify, Portainer, etc.) — point them at the file and set the secrets as environment variables.
428
+
429
+ > The repository's default `docker-compose.yml` builds the image from source (`build: .`) and is intended for local development.
430
+
416
431
  ### Kubernetes (Helm Chart)
417
432
 
418
433
  ```bash
@@ -585,8 +600,7 @@ extraEnvFrom:
585
600
  | [DeepWiki](https://deepwiki.com/libredb/libredb-studio) | AI-powered documentation — always up-to-date with the codebase |
586
601
  | [SonarCloud](https://sonarcloud.io/project/overview?id=libredb_libredb-studio) | Code quality, security analysis, and technical debt tracking |
587
602
  | [API Docs](docs/API_DOCS.md) | Complete REST API reference |
588
- | [OIDC Setup Guide](docs/OIDC_SETUP.md) | SSO configuration for Auth0, Keycloak, Okta, Azure AD, Zitadel |
589
- | [OIDC Architecture](docs/OIDC_ARCH.md) | OIDC subsystem internals, security model, extension points |
603
+ | [OIDC SSO](docs/OIDC.md) | SSO setup (Auth0, Keycloak, Okta, Azure AD, Zitadel, Google) + subsystem internals & security model |
590
604
  | [Theming Guide](docs/THEMING.md) | CSS theming, dark mode, and styling customization |
591
605
  | [Architecture](docs/ARCHITECTURE.md) | System architecture and design patterns |
592
606
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libredb/studio",
3
- "version": "0.9.13",
3
+ "version": "0.9.19",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -71,6 +71,10 @@
71
71
  "react": "^19",
72
72
  "react-dom": "^19"
73
73
  },
74
+ "engines": {
75
+ "node": ">=24.16.0"
76
+ },
77
+ "packageManager": "bun@1.3.14",
74
78
  "scripts": {
75
79
  "dev": "next dev",
76
80
  "build": "next build",
@@ -80,6 +84,7 @@
80
84
  "lint": "eslint .",
81
85
  "typecheck": "tsc --noEmit",
82
86
  "test": "bun test tests/unit tests/api tests/integration && bun test tests/hooks && bun run test:components",
87
+ "test:ci": "bash tests/run-core.sh && bun run test:components",
83
88
  "test:unit": "bun test tests/unit",
84
89
  "test:integration": "bun test tests/integration",
85
90
  "test:hooks": "bun test tests/hooks",
@@ -87,8 +92,8 @@
87
92
  "test:components": "bash tests/run-components.sh",
88
93
  "test:components:coverage": "bash tests/run-components.sh --coverage --coverage-reporter=lcov --coverage-dir=coverage/components",
89
94
  "test:e2e": "bunx playwright test",
90
- "test:coverage:core": "bun test --coverage --coverage-reporter=lcov --coverage-reporter=text --coverage-dir=coverage/core tests/unit tests/api tests/integration && bun test --coverage --coverage-reporter=lcov --coverage-reporter=text --coverage-dir=coverage/hooks tests/hooks",
91
- "test:coverage": "rm -rf coverage && bun run test:coverage:core && bun run test:components:coverage && node scripts/merge-lcov.mjs coverage/core/lcov.info coverage/hooks/lcov.info coverage/components/lcov.info coverage/lcov.info",
95
+ "test:coverage:core": "bash tests/run-core.sh --coverage --coverage-reporter=lcov --coverage-dir=coverage/core",
96
+ "test:coverage": "rm -rf coverage && bun run test:coverage:core && bun run test:components:coverage && node scripts/merge-lcov.mjs coverage/core/file-*/lcov.info coverage/components/lcov.info coverage/lcov.info",
92
97
  "test:coverage-html": "bun run test:coverage && genhtml coverage/lcov.info --output-directory coverage/html && echo '\n Open coverage/html/index.html in your browser'"
93
98
  },
94
99
  "dependencies": {
@@ -124,7 +129,7 @@
124
129
  "@tanstack/react-table": "^8.21.3",
125
130
  "@tanstack/react-virtual": "^3.13.13",
126
131
  "@xyflow/react": "^12.10.0",
127
- "better-sqlite3": "^12.6.2",
132
+ "better-sqlite3": "^12.10.1",
128
133
  "class-variance-authority": "^0.7.1",
129
134
  "clsx": "^2.1.1",
130
135
  "cmdk": "^1.1.1",
@@ -169,7 +174,7 @@
169
174
  "@testing-library/user-event": "^14.6.1",
170
175
  "@types/better-sqlite3": "^7.6.13",
171
176
  "@types/bun": "latest",
172
- "@types/node": "^20",
177
+ "@types/node": "^24",
173
178
  "@types/pg": "^8.16.0",
174
179
  "@types/react": "^19.2.14",
175
180
  "@types/react-dom": "^19.2.3",