drixio 1.2.0 → 1.2.1
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.
- package/LICENSE +22 -0
- package/README.md +207 -113
- package/dist/cli.js +604 -10303
- package/dist/studio/assets/healthModal-Wc69raxJ.js +135 -0
- package/dist/studio/assets/{index-DOTfHOMW.js → index-CmbAXgDl.js} +1193 -443
- package/dist/studio/assets/index-zlNWHZdK.css +1 -0
- package/dist/studio/assets/recycleBinModal-CM1yVRKo.js +85 -0
- package/dist/studio/assets/sql-formatter-B5XS8faB.js +15 -0
- package/dist/studio/icon.svg +65 -0
- package/dist/studio/index.html +11 -3
- package/dist/studio/logo.svg +72 -0
- package/dist/studio/manifest.json +18 -0
- package/package.json +22 -6
- package/dist/studio/assets/index-DPNeFArq.css +0 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
|
|
2
|
+
<!--
|
|
3
|
+
Drixio App Icon — 512×512
|
|
4
|
+
D-mark: a proper D letterform (flat left spine, curved right),
|
|
5
|
+
filled with three horizontal data-row bands in brand colors.
|
|
6
|
+
|
|
7
|
+
D shape: spine at x=76, base at x=196, curve peaks at (436, 256).
|
|
8
|
+
Centered in 512×512: horizontal margin = 76, vertical margin = 90.
|
|
9
|
+
-->
|
|
10
|
+
|
|
11
|
+
<!-- Dark navy background -->
|
|
12
|
+
<rect width="512" height="512" rx="110" fill="transparent"/>
|
|
13
|
+
|
|
14
|
+
<defs>
|
|
15
|
+
<clipPath id="d">
|
|
16
|
+
<!--
|
|
17
|
+
Solid D letterform path:
|
|
18
|
+
- Left spine: x=76, from y=90 to y=422
|
|
19
|
+
- Base right to x=196
|
|
20
|
+
- Smooth bezier curve forming the right bow of the D,
|
|
21
|
+
peaking at x=436, y=256
|
|
22
|
+
- Returns to top at x=196, y=90
|
|
23
|
+
-->
|
|
24
|
+
<path d="
|
|
25
|
+
M 76 90
|
|
26
|
+
L 76 422
|
|
27
|
+
L 196 422
|
|
28
|
+
C 400 422 436 356 436 256
|
|
29
|
+
C 436 156 400 90 196 90
|
|
30
|
+
Z
|
|
31
|
+
"/>
|
|
32
|
+
</clipPath>
|
|
33
|
+
</defs>
|
|
34
|
+
|
|
35
|
+
<!--
|
|
36
|
+
Three horizontal color bands, all clipped to the D shape.
|
|
37
|
+
Gaps between bands are transparent → show the dark background through.
|
|
38
|
+
Band heights are equal; gap is 20px between each band.
|
|
39
|
+
|
|
40
|
+
Top y= 90 – 190 (h=100) sky blue #38bdf8
|
|
41
|
+
Gap y=190 – 210 transparent
|
|
42
|
+
Middle y=210 – 302 (h= 92) blue #3b82f6 (split in two halves)
|
|
43
|
+
Gap y=302 – 322 transparent
|
|
44
|
+
Bottom y=322 – 422 (h=100) indigo #6366f1
|
|
45
|
+
-->
|
|
46
|
+
|
|
47
|
+
<!-- Top band: sky blue -->
|
|
48
|
+
<rect x="0" y="90" width="512" height="100" fill="#38bdf8" clip-path="url(#d)"/>
|
|
49
|
+
|
|
50
|
+
<!-- Middle left half: blue -->
|
|
51
|
+
<rect x="0" y="210" width="230" height="92" fill="#3b82f6" clip-path="url(#d)"/>
|
|
52
|
+
|
|
53
|
+
<!-- Middle right half: blue (gap from x=230 to x=260 is transparent) -->
|
|
54
|
+
<rect x="260" y="210" width="252" height="92" fill="#3b82f6" clip-path="url(#d)"/>
|
|
55
|
+
|
|
56
|
+
<!-- Bottom band: indigo -->
|
|
57
|
+
<rect x="0" y="322" width="512" height="100" fill="#6366f1" clip-path="url(#d)"/>
|
|
58
|
+
|
|
59
|
+
<!--
|
|
60
|
+
Emerald accent dot — sits in the vertical gap between the two middle halves.
|
|
61
|
+
Gap center: x=(230+260)/2=245, y=(210+302)/2=256
|
|
62
|
+
Not clipped so it renders cleanly on top of the color bands.
|
|
63
|
+
-->
|
|
64
|
+
<circle cx="245" cy="256" r="22" fill="#34d399"/>
|
|
65
|
+
</svg>
|
package/dist/studio/index.html
CHANGED
|
@@ -8,9 +8,17 @@
|
|
|
8
8
|
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200"
|
|
9
9
|
/>
|
|
10
10
|
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
<link rel="manifest" href="./manifest.json" />
|
|
12
|
+
<link rel="icon" type="image/svg+xml" href="./icon.svg" />
|
|
13
|
+
<meta name="theme-color" content="#0b0f19" />
|
|
14
|
+
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
15
|
+
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
|
16
|
+
<meta name="apple-mobile-web-app-title" content="Drixio Studio" />
|
|
17
|
+
|
|
18
|
+
<title>Drixio Studio</title>
|
|
19
|
+
<script type="module" crossorigin src="./assets/index-CmbAXgDl.js"></script>
|
|
20
|
+
<link rel="modulepreload" crossorigin href="./assets/sql-formatter-B5XS8faB.js">
|
|
21
|
+
<link rel="stylesheet" crossorigin href="./assets/index-zlNWHZdK.css">
|
|
14
22
|
</head>
|
|
15
23
|
|
|
16
24
|
<body>
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 64" fill="none">
|
|
2
|
+
<!--
|
|
3
|
+
Drixio horizontal logo — 200×64 viewBox, transparent background.
|
|
4
|
+
Place on any surface matching the app's dark navy (#0f172a).
|
|
5
|
+
|
|
6
|
+
Layout:
|
|
7
|
+
[D-mark icon 6–58px wide, 2–62px tall] [gap] [wordmark "drixio"]
|
|
8
|
+
|
|
9
|
+
D shape: spine at x=6, base right at x=20, bezier peak at (58, 32).
|
|
10
|
+
Total mark: ~52×60px, vertically centered in 64px height (2px top/bottom).
|
|
11
|
+
-->
|
|
12
|
+
|
|
13
|
+
<defs>
|
|
14
|
+
<clipPath id="dLogo">
|
|
15
|
+
<!--
|
|
16
|
+
D letterform:
|
|
17
|
+
- Left spine: x=6, y=2 → y=62
|
|
18
|
+
- Base: right to x=20
|
|
19
|
+
- Bezier bow: (20,62) → peak (58,32) → (20,2)
|
|
20
|
+
- Close back to spine top (6,2)
|
|
21
|
+
-->
|
|
22
|
+
<path d="
|
|
23
|
+
M 6 2
|
|
24
|
+
L 6 62
|
|
25
|
+
L 20 62
|
|
26
|
+
C 52 62 58 48 58 32
|
|
27
|
+
C 58 16 52 2 20 2
|
|
28
|
+
Z
|
|
29
|
+
"/>
|
|
30
|
+
</clipPath>
|
|
31
|
+
</defs>
|
|
32
|
+
|
|
33
|
+
<!--
|
|
34
|
+
Three horizontal bands clipped to the D shape.
|
|
35
|
+
Transparent gaps between bands show the surface behind the SVG.
|
|
36
|
+
|
|
37
|
+
Top y= 2 – 20 (h=18) sky blue #38bdf8
|
|
38
|
+
Gap y=20 – 25 transparent
|
|
39
|
+
Middle y=25 – 39 (h=14) blue #3b82f6 (split: left x<27, right x>33)
|
|
40
|
+
Gap y=39 – 44 transparent
|
|
41
|
+
Bottom y=44 – 62 (h=18) indigo #6366f1
|
|
42
|
+
-->
|
|
43
|
+
|
|
44
|
+
<!-- Top band: sky blue -->
|
|
45
|
+
<rect x="0" y="2" width="60" height="18" fill="#38bdf8" clip-path="url(#dLogo)"/>
|
|
46
|
+
|
|
47
|
+
<!-- Middle left half: blue -->
|
|
48
|
+
<rect x="0" y="25" width="27" height="14" fill="#3b82f6" clip-path="url(#dLogo)"/>
|
|
49
|
+
|
|
50
|
+
<!-- Middle right half: blue (vertical gap x=27–33 is transparent) -->
|
|
51
|
+
<rect x="33" y="25" width="27" height="14" fill="#3b82f6" clip-path="url(#dLogo)"/>
|
|
52
|
+
|
|
53
|
+
<!-- Bottom band: indigo -->
|
|
54
|
+
<rect x="0" y="44" width="60" height="18" fill="#6366f1" clip-path="url(#dLogo)"/>
|
|
55
|
+
|
|
56
|
+
<!--
|
|
57
|
+
Emerald accent dot — centered in the vertical gap (x=27–33) at mid-row (y=32).
|
|
58
|
+
Drawn outside clip-path so it renders on top cleanly.
|
|
59
|
+
-->
|
|
60
|
+
<circle cx="30" cy="32" r="4" fill="#34d399"/>
|
|
61
|
+
|
|
62
|
+
<!-- ── Wordmark ────────────────────────────────────────────── -->
|
|
63
|
+
<text
|
|
64
|
+
x="72"
|
|
65
|
+
y="32"
|
|
66
|
+
dominant-baseline="central"
|
|
67
|
+
font-family="Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif"
|
|
68
|
+
font-size="28"
|
|
69
|
+
font-weight="600"
|
|
70
|
+
letter-spacing="0.3"
|
|
71
|
+
fill="#ffffff">drixio</text>
|
|
72
|
+
</svg>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Drixio Studio",
|
|
3
|
+
"short_name": "Drixio",
|
|
4
|
+
"description": "The developer-first database manager for SQLite, PostgreSQL & MySQL",
|
|
5
|
+
"start_url": "./",
|
|
6
|
+
"display": "standalone",
|
|
7
|
+
"background_color": "#0b0f19",
|
|
8
|
+
"theme_color": "#0b0f19",
|
|
9
|
+
"icons": [
|
|
10
|
+
{
|
|
11
|
+
"src": "icon.svg",
|
|
12
|
+
"sizes": "512x512",
|
|
13
|
+
"type": "image/svg+xml",
|
|
14
|
+
"purpose": "any maskable"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "drixio",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "A lightweight interactive TUI database client",
|
|
5
5
|
"bin": {
|
|
6
6
|
"drixio": "dist/cli.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
|
-
"dist"
|
|
9
|
+
"dist/cli.js",
|
|
10
|
+
"dist/studio"
|
|
10
11
|
],
|
|
11
12
|
"keywords": [
|
|
12
13
|
"database",
|
|
@@ -34,31 +35,46 @@
|
|
|
34
35
|
"access": "public"
|
|
35
36
|
},
|
|
36
37
|
"devDependencies": {
|
|
38
|
+
"@biomejs/biome": "^2.5.14",
|
|
39
|
+
"@types/mssql": "^12.3.0",
|
|
37
40
|
"@types/node": "^26.1.2",
|
|
38
41
|
"@types/pg": "^8.20.0",
|
|
39
|
-
"
|
|
42
|
+
"@types/ssh2": "^1.15.6",
|
|
40
43
|
"tsup": "^8.5.1",
|
|
41
44
|
"tsx": "^4.23.1",
|
|
42
45
|
"typescript": "^7.0.2",
|
|
43
46
|
"vite": "^8.1.5",
|
|
44
|
-
"vitest": "^4.1.10"
|
|
47
|
+
"vitest": "^4.1.10",
|
|
48
|
+
"sql-formatter": "^15.8.2"
|
|
45
49
|
},
|
|
46
50
|
"dependencies": {
|
|
47
51
|
"@hono/node-server": "^2.0.12",
|
|
48
52
|
"@inquirer/prompts": "^8.5.2",
|
|
49
53
|
"hono": "^4.12.32",
|
|
54
|
+
"mongodb": "^7.6.0",
|
|
55
|
+
"mssql": "^12.7.2",
|
|
50
56
|
"mysql2": "^3.23.2",
|
|
51
57
|
"open": "^11.0.0",
|
|
52
58
|
"pg": "^8.22.0",
|
|
53
|
-
"picocolors": "^1.1.1"
|
|
59
|
+
"picocolors": "^1.1.1",
|
|
60
|
+
"ssh2": "^1.17.0"
|
|
54
61
|
},
|
|
55
62
|
"scripts": {
|
|
56
63
|
"dev": "tsx bin/cli.ts",
|
|
57
64
|
"dev:studio": "vite --config studio/vite.config.ts",
|
|
65
|
+
"dev:all": "node scripts/dev-all.js",
|
|
58
66
|
"build:cli": "tsup",
|
|
59
67
|
"build:studio": "vite build --config studio/vite.config.ts",
|
|
60
68
|
"build": "pnpm build:cli && pnpm build:studio",
|
|
61
69
|
"test": "node scripts/test-runner.js",
|
|
62
|
-
"typecheck": "tsc --noEmit"
|
|
70
|
+
"typecheck": "tsc --noEmit",
|
|
71
|
+
"lint": "biome lint .",
|
|
72
|
+
"format": "biome format --write .",
|
|
73
|
+
"check": "biome check --write .",
|
|
74
|
+
"db:up": "docker compose up -d",
|
|
75
|
+
"db:down": "docker compose down",
|
|
76
|
+
"db:status": "docker compose ps",
|
|
77
|
+
"db:logs": "docker compose logs -f",
|
|
78
|
+
"build:sea": "node scripts/build-sea.js"
|
|
63
79
|
}
|
|
64
80
|
}
|