From 2e960571c30aed32b71d91aacd9285333f0e2692 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:39:17 +0530 Subject: [PATCH 01/22] updaated index.html with the default template --- ui/index.html | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/ui/index.html b/ui/index.html index 6e8f54e9..e83c3328 100644 --- a/ui/index.html +++ b/ui/index.html @@ -1,21 +1,12 @@ - + - MindsDB - + + + -
-
- - - - - -

Hang tight! MindsDB is starting..

-

Connect a new database or app, or add a model.

-
-
- +
+ - \ No newline at end of file + From c96a462a361dc4a624906c48164c54a9d85c3da7 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:41:22 +0530 Subject: [PATCH 02/22] moved index.css to src dir --- ui/{ => src}/index.css | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename ui/{ => src}/index.css (100%) diff --git a/ui/index.css b/ui/src/index.css similarity index 100% rename from ui/index.css rename to ui/src/index.css From f4cfb7dda011b528c370aafdc12a193942c91b3f Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:41:37 +0530 Subject: [PATCH 03/22] import index.css to main.tsx --- ui/src/main.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ui/src/main.tsx b/ui/src/main.tsx index 1f79112c..688382fb 100644 --- a/ui/src/main.tsx +++ b/ui/src/main.tsx @@ -1,9 +1,10 @@ +import "./index.css"; import React from "react"; import ReactDOM from "react-dom/client"; import CssBaseline from "@mui/material/CssBaseline"; import { DockerMuiThemeProvider } from "@docker/docker-mui-theme"; -import { App } from './App'; +import { App } from "./App"; ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render( From a9840134244c7208eb88f848c74d9d3aec1316cf Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:43:11 +0530 Subject: [PATCH 04/22] updated App comp to run loader and redirect logic --- ui/src/App.tsx | 88 ++++++++++++++++++++++++-------------------------- 1 file changed, 43 insertions(+), 45 deletions(-) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index 28ca073c..fe365267 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -1,53 +1,51 @@ -import React from 'react'; -import Button from '@mui/material/Button'; -import { createDockerDesktopClient } from '@docker/extension-api-client'; -import { Stack, TextField, Typography } from '@mui/material'; - -// Note: This line relies on Docker Desktop's presence as a host application. -// If you're running this React app in a browser, it won't work properly. -const client = createDockerDesktopClient(); - -function useDockerDesktopClient() { - return client; -} +import { useEffect } from "react"; export function App() { - const [response, setResponse] = React.useState(); - const ddClient = useDockerDesktopClient(); - - const fetchAndDisplayResponse = async () => { - const result = await ddClient.extension.vm?.service?.get('/hello'); - setResponse(JSON.stringify(result)); + const checkMindsDBServer = () => { + fetch("http://localhost:47334") + .then((response) => { + if (!response.ok) { + throw new Error("Server not ready"); + } + window.location.href = "http://localhost:47334"; + }) + .catch((error) => { + // Server not ready yet. Wait for 2 seconds and try again + setTimeout(checkMindsDBServer, 2000); + }); }; - return ( - <> - Docker extension demo - - This is a basic page rendered with MUI, using Docker's theme. Read the - MUI documentation to learn more. Using MUI in a conventional way and - avoiding custom styling will help make sure your extension continues to - look great as Docker's theme evolves. - - - Pressing the below button will trigger a request to the backend. Its - response will appear in the textarea. - - - + useEffect(() => { + checkMindsDBServer(); + }, []); - + + + + - - + +

Hang tight! MindsDB is starting..

+

+ Connect a new database or app, or add a model. +

+ ); } From 12a8e85a64687bf30a5cbd1979d043f74c768e1b Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:43:27 +0530 Subject: [PATCH 05/22] removed unnecessary build cmds from Dockerfile --- Dockerfile | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index 270155ff..28766fca 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,8 +14,4 @@ LABEL org.opencontainers.image.title="MindsDB" \ COPY docker-compose.yaml . COPY metadata.json . COPY assets/mindsdb.svg . -COPY ui ui - -WORKDIR /ui -RUN npm install -RUN npm run build:css \ No newline at end of file +COPY ui ui \ No newline at end of file From 0e6e17ec6256a55a456335cecd6b1475f10fe4f5 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:44:22 +0530 Subject: [PATCH 06/22] removed index.js --- ui/index.js | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 ui/index.js diff --git a/ui/index.js b/ui/index.js deleted file mode 100644 index 44afe487..00000000 --- a/ui/index.js +++ /dev/null @@ -1,15 +0,0 @@ -function checkServer() { - fetch('http://localhost:47334') - .then(response => { - if (!response.ok) { - throw new Error('Server not ready'); - } - window.location.href = 'http://localhost:47334'; - }) - .catch(error => { - // Server not ready yet. Wait for 2 seconds and try again - setTimeout(checkServer, 2000); - }); - } - - window.onload = checkServer; \ No newline at end of file From 04d7316729d36cc9364530d7f8205774c92529a1 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:48:20 +0530 Subject: [PATCH 07/22] installed tailwindcss and peer deps --- ui/package-lock.json | 107 +++++++++++++++++++++++++++++++++---------- ui/package.json | 4 +- 2 files changed, 87 insertions(+), 24 deletions(-) diff --git a/ui/package-lock.json b/ui/package-lock.json index b82dcaed..4fd22b95 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -23,8 +23,10 @@ "@types/react": "^18.0.17", "@types/react-dom": "^18.0.6", "@vitejs/plugin-react": "^2.1.0", + "autoprefixer": "^10.4.19", "jest": "^29.1.2", - "tailwindcss": "^3.4.1", + "postcss": "^8.4.38", + "tailwindcss": "^3.4.3", "typescript": "^4.8.3", "vite": "^3.1.0" } @@ -2189,6 +2191,43 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/autoprefixer": { + "version": "10.4.19", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001599", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, "node_modules/babel-jest": { "version": "29.5.0", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz", @@ -2402,9 +2441,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", - "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "devOptional": true, "funding": [ { @@ -2421,8 +2460,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001580", - "electron-to-chromium": "^1.4.648", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, @@ -2475,9 +2514,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001585", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001585.tgz", - "integrity": "sha512-yr2BWR1yLXQ8fMpdS/4ZZXpseBgE7o4g41x3a6AJOqZuOi+iE/WdJYAuZ6Y95i4Ohd2Y+9MzIWRR+uGABH4s3Q==", + "version": "1.0.30001624", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001624.tgz", + "integrity": "sha512-0dWnQG87UevOCPYaOR49CBcLBwoZLpws+k6W37nLjWUhumP1Isusj0p2u+3KhjNloRWK9OKMgjBBzPujQHw4nA==", "devOptional": true, "funding": [ { @@ -2776,9 +2815,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.665", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.665.tgz", - "integrity": "sha512-UpyCWObBoD+nSZgOC2ToaIdZB0r9GhqT2WahPKiSki6ckkSuKhQNso8V2PrFcHBMleI/eqbKgVQgVC4Wni4ilw==", + "version": "1.4.783", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", + "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==", "devOptional": true }, "node_modules/emittery": { @@ -3355,6 +3394,19 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -5639,6 +5691,15 @@ "node": ">=0.10.0" } }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -5885,9 +5946,9 @@ } }, "node_modules/postcss": { - "version": "8.4.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz", - "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "funding": [ { @@ -5906,7 +5967,7 @@ "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -6386,9 +6447,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6654,9 +6715,9 @@ } }, "node_modules/tailwindcss": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz", - "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz", + "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==", "dev": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", @@ -6667,7 +6728,7 @@ "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.19.1", + "jiti": "^1.21.0", "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", diff --git a/ui/package.json b/ui/package.json index f114ec7b..3c39b002 100644 --- a/ui/package.json +++ b/ui/package.json @@ -25,8 +25,10 @@ "@types/react": "^18.0.17", "@types/react-dom": "^18.0.6", "@vitejs/plugin-react": "^2.1.0", + "autoprefixer": "^10.4.19", "jest": "^29.1.2", - "tailwindcss": "^3.4.1", + "postcss": "^8.4.38", + "tailwindcss": "^3.4.3", "typescript": "^4.8.3", "vite": "^3.1.0" } From 804e740f031d0422817577ac63446d89b7679596 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:48:38 +0530 Subject: [PATCH 08/22] created postcss.config.js --- ui/postcss.config.js | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 ui/postcss.config.js diff --git a/ui/postcss.config.js b/ui/postcss.config.js new file mode 100644 index 00000000..2e7af2b7 --- /dev/null +++ b/ui/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} From 7e0928853562ed0f43dcc169a82fdd87f41bb6e9 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:58:53 +0530 Subject: [PATCH 09/22] fixed bugs in App comp --- ui/src/App.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index fe365267..c33ef3f4 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -7,7 +7,7 @@ export function App() { if (!response.ok) { throw new Error("Server not ready"); } - window.location.href = "http://localhost:47334"; + window.location.href = "http://localhost:47334/editor"; }) .catch((error) => { // Server not ready yet. Wait for 2 seconds and try again @@ -22,7 +22,7 @@ export function App() { return (
-

Hang tight! MindsDB is starting..

-

+

Hang tight! MindsDB is starting..

+

Connect a new database or app, or add a model.

From 30d4253030c6e617dccf20c3ff720e788ae0ff19 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 22:59:22 +0530 Subject: [PATCH 10/22] added the build commands for the UI to Dockerfile --- Dockerfile | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 28766fca..7c13c069 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,15 @@ +FROM --platform=$BUILDPLATFORM node:21.6-alpine3.18 AS client-builder +WORKDIR /ui +# cache packages in layer +COPY ui/package.json /ui/package.json +COPY ui/package-lock.json /ui/package-lock.json +RUN --mount=type=cache,target=/usr/src/app/.npm \ + npm set cache /usr/src/app/.npm && \ + npm ci +# install +COPY ui /ui +RUN npm run build + FROM node:18-alpine LABEL org.opencontainers.image.title="MindsDB" \ org.opencontainers.image.description="Streamline AI development with MindsDB in your Docker environment. Deploy, manage, and scale your AI models seamlessly." \ @@ -14,4 +26,4 @@ LABEL org.opencontainers.image.title="MindsDB" \ COPY docker-compose.yaml . COPY metadata.json . COPY assets/mindsdb.svg . -COPY ui ui \ No newline at end of file +COPY --from=client-builder /ui/build ui \ No newline at end of file From 0aa34fd8c75b595a876d0abff3887344e1f05872 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Tue, 28 May 2024 23:01:33 +0530 Subject: [PATCH 11/22] fixed npm vulnerabilities --- ui/package-lock.json | 198 +++++++++++++++++++------------------------ 1 file changed, 89 insertions(+), 109 deletions(-) diff --git a/ui/package-lock.json b/ui/package-lock.json index 4fd22b95..bb4b8d5c 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -57,11 +57,12 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.6.tgz", + "integrity": "sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==", "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.24.6", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -107,14 +108,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", - "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.6.tgz", + "integrity": "sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg==", "devOptional": true, "dependencies": { - "@babel/types": "^7.21.4", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -122,14 +123,14 @@ } }, "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "devOptional": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -167,34 +168,34 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz", + "integrity": "sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==", "devOptional": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz", + "integrity": "sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==", "devOptional": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" + "@babel/template": "^7.24.6", + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz", + "integrity": "sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==", "devOptional": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" @@ -252,29 +253,29 @@ } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz", + "integrity": "sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==", "devOptional": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz", + "integrity": "sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", + "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==", "engines": { "node": ">=6.9.0" } @@ -303,22 +304,23 @@ } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.6.tgz", + "integrity": "sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.6", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", + "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", "devOptional": true, "bin": { "parser": "bin/babel-parser.js" @@ -580,34 +582,34 @@ } }, "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.6.tgz", + "integrity": "sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==", "devOptional": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/code-frame": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", - "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.6.tgz", + "integrity": "sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw==", "devOptional": true, "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.4", - "@babel/types": "^7.21.4", - "debug": "^4.1.0", + "@babel/code-frame": "^7.24.6", + "@babel/generator": "^7.24.6", + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-function-name": "^7.24.6", + "@babel/helper-hoist-variables": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -615,12 +617,12 @@ } }, "node_modules/@babel/types": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", - "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.6.tgz", + "integrity": "sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==", "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.6", "to-fast-properties": "^2.0.0" }, "engines": { @@ -1616,9 +1618,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "devOptional": true, "engines": { "node": ">=6.0.0" @@ -1631,13 +1633,13 @@ "devOptional": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "devOptional": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "node_modules/@mui/base": { @@ -5056,26 +5058,11 @@ "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -5095,12 +5082,6 @@ "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/jest-util": { "version": "29.5.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", @@ -5900,8 +5881,7 @@ "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "devOptional": true + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -6388,9 +6368,9 @@ } }, "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "devOptional": true, "bin": { "semver": "bin/semver.js" @@ -6903,9 +6883,9 @@ } }, "node_modules/vite": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.5.tgz", - "integrity": "sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==", + "version": "3.2.10", + "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.10.tgz", + "integrity": "sha512-Dx3olBo/ODNiMVk/cA5Yft9Ws+snLOXrhLtrI3F4XLt4syz2Yg8fayZMWScPKoz12v5BUv7VEmQHnsfpY80fYw==", "dev": true, "dependencies": { "esbuild": "^0.15.9", From c2d322be70ce66a19f7afcf5e5dd219501db12e6 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Wed, 29 May 2024 11:32:38 +0530 Subject: [PATCH 12/22] added documentation for App comp --- ui/src/App.tsx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index c33ef3f4..4c4858a0 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -1,6 +1,20 @@ import { useEffect } from "react"; +/** + * App component + * This component will render the loading screen while MindsDB server is starting + * It will continuously check if MindsDB server is ready to serve requests + * Once the server is ready, it will redirect to the MindsDB editor + * @returns JSX.Element + */ + export function App() { + /** + * Function to check if MindsDB server is ready + * If the server is ready, it will redirect to the MindsDB editor + * If the server is not ready, it will wait for 2 seconds and try again + * @returns void + */ const checkMindsDBServer = () => { fetch("http://localhost:47334") .then((response) => { From 595ddcf558be1e65b630689195813098a3476d88 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Wed, 29 May 2024 11:51:06 +0530 Subject: [PATCH 13/22] updated the cmds to run ui in README --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 54618ee5..133f23cf 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ This is the Docker Desktop Extension for MindsDB. It allows you to use MindsDB w ## Local Development -The extension is built using the Docker Desktop Extension SDK. To build and install the extension locally, you need to have Docker Desktop installed. +The extension is built using the Docker Desktop Extension SDK. To build and install the extension locally, you need to have Docker Desktop installed. The following commands can be used to get the extension running locally. @@ -35,7 +35,6 @@ To start the development server, run the following commands: ```shell cd ui npm install - npm run build:css npm run dev ``` From d924328feb9904f0aaecc6815968661aa14fb066 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Wed, 29 May 2024 13:21:43 +0530 Subject: [PATCH 14/22] added the correct font class --- ui/src/App.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index 4c4858a0..8af046bd 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -34,7 +34,7 @@ export function App() { }, []); return ( -
+
Date: Wed, 29 May 2024 17:45:47 +0530 Subject: [PATCH 15/22] updated the check server func to look for /editor --- ui/src/App.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/App.tsx b/ui/src/App.tsx index 8af046bd..8bdc02c0 100644 --- a/ui/src/App.tsx +++ b/ui/src/App.tsx @@ -16,7 +16,7 @@ export function App() { * @returns void */ const checkMindsDBServer = () => { - fetch("http://localhost:47334") + fetch("http://localhost:47334/editor") .then((response) => { if (!response.ok) { throw new Error("Server not ready"); From 8d4fbd2e333fd0392442bb91f1153ab690efcc50 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Wed, 29 May 2024 17:46:14 +0530 Subject: [PATCH 16/22] bumped version to 1.0.2 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 7dea76ed..6d7de6e6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.0.1 +1.0.2 From 071c619f9102d84d7993ec02fbed7baced3ecf66 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Wed, 29 May 2024 17:57:49 +0530 Subject: [PATCH 17/22] re-arranged imports to improve readability --- ui/src/main.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/main.tsx b/ui/src/main.tsx index 688382fb..d4270f13 100644 --- a/ui/src/main.tsx +++ b/ui/src/main.tsx @@ -1,9 +1,9 @@ -import "./index.css"; import React from "react"; import ReactDOM from "react-dom/client"; import CssBaseline from "@mui/material/CssBaseline"; import { DockerMuiThemeProvider } from "@docker/docker-mui-theme"; +import "./index.css"; import { App } from "./App"; ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render( From 00ec8d85b6a43c78d5a61f227968bc1726ec52a7 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Thu, 30 May 2024 10:39:00 +0530 Subject: [PATCH 18/22] updated the final stage of build to use basic Alpine image --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 7c13c069..14ccd0fb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,7 +10,7 @@ RUN --mount=type=cache,target=/usr/src/app/.npm \ COPY ui /ui RUN npm run build -FROM node:18-alpine +FROM alpine LABEL org.opencontainers.image.title="MindsDB" \ org.opencontainers.image.description="Streamline AI development with MindsDB in your Docker environment. Deploy, manage, and scale your AI models seamlessly." \ org.opencontainers.image.vendor="MindsDB" \ From 17814dc8d09cad4c2180e389bd520b7ffe8af780 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Thu, 30 May 2024 11:05:21 +0530 Subject: [PATCH 19/22] removed the script for building Tailwind CSS --- ui/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/ui/package.json b/ui/package.json index 3c39b002..3fa1bd39 100644 --- a/ui/package.json +++ b/ui/package.json @@ -15,7 +15,6 @@ "scripts": { "dev": "vite", "build": "tsc && vite build", - "build:css": "npx tailwindcss -i index.css -o output.css", "test": "jest src" }, "devDependencies": { From 27e94ad54c76202e9ec196947c5888ee600deccc Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Thu, 30 May 2024 11:27:09 +0530 Subject: [PATCH 20/22] updated labels in Dockerfile --- Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 14ccd0fb..2836c197 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,13 +12,13 @@ RUN npm run build FROM alpine LABEL org.opencontainers.image.title="MindsDB" \ - org.opencontainers.image.description="Streamline AI development with MindsDB in your Docker environment. Deploy, manage, and scale your AI models seamlessly." \ + org.opencontainers.image.description="MindsDB is the platform for customizing AI from enterprise data. You can create, serve, and fine-tune models in real-time from your database, vector store, and application data." \ org.opencontainers.image.vendor="MindsDB" \ com.docker.desktop.extension.api.version="0.3.0" \ com.docker.extension.screenshots='[{"alt": "Screenshot of MindsDB Docker Extension", "url": "https://raw.githubusercontent.com/mindsdb/mindsdb-docker-extension/main/assets/mindsdb_screenshot.png"}]' \ - com.docker.extension.categories="Databases" \ + com.docker.extension.categories="Database" \ com.docker.desktop.extension.icon="https://raw.githubusercontent.com/mindsdb/mindsdb-docker-extension/main/assets/mindsdb.svg" \ - com.docker.extension.detailed-description="MindsDB abstracts LLMs, time series, regression, and classification models as virtual tables (AI-Tables). Since SQL is an effective declarative language for data manipulation, it’s also an ideal foundation for constructing data-centric AI." \ + com.docker.extension.detailed-description="MindsDB integrates with numerous data sources, including databases, vector stores, and applications, and popular AI/ML frameworks, including AutoML and LLMs. MindsDB connects data sources with AI/ML frameworks and automates routine workflows between them. By doing so, we bring data and AI together, enabling the intuitive implementation of customized AI systems." \ com.docker.extension.publisher-url="https://github.com/mindsdb/mindsdb-docker-extension" \ com.docker.extension.additional-urls='[{"title":"Documentation","url":"https://docs.mindsdb.com/what-is-mindsdb/"}, {"title":"Support","url":"https://github.com/mindsdb/mindsdb/discussions"}, {"title":"Terms of Service","url":"https://mindsdb.com/terms"}, {"title":"Privacy policy","url":"https://mindsdb.com/privacy-policy/"}]' \ com.docker.extension.changelog="https://raw.githubusercontent.com/mindsdb/mindsdb-docker-extension/main/CHANGELOG.md" From 9e2a205b58642b6fcb55cfec35ba85b026ed9828 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Thu, 30 May 2024 11:45:50 +0530 Subject: [PATCH 21/22] exposed the MongoDB port 47336 --- docker-compose.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yaml b/docker-compose.yaml index d6ee78e1..4d1fb236 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -4,6 +4,7 @@ services: ports: - "47334:47334" - "47335:47335" + - "47336:47336" volumes: - data:/opt/mindsdb/data - config:/opt/mindsdb/config From 313a17c47081382ca109150d6aa274baac319558 Mon Sep 17 00:00:00 2001 From: Minura Punchihewa Date: Thu, 30 May 2024 11:45:57 +0530 Subject: [PATCH 22/22] added a CHANGELOG --- CHANGELOG.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..104b262e --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,30 @@ +# 1.0.2 (2024-05-30) + +- Improved the build process of the Docker image by incorporating a multi-stage build +- Moved the loading screen and the function for checking if the server is ready to the App component +- Removed the script for building CSS with Tailwind separately and added it to the main build process +- Exposed the MonngoDB port 47336 of the MindsDB service +- Cleaned up the code by removing unnecessary files and dependencies +- Updated the README and the labels in the Dockerfile with the correct information + +# 1.0.1 (2024-04-11) + +- Developed a CI/CD pipeline for the extension via GitHub Actions +- Set an `always` `pull_policy` for the MindsDB service +- Updated the name of the MindsDB service to `mindsdb_service` and exposed the correct ports +- Added a VERSION file to manage the version of the extension +- Removed the hard-coded TAG parameter from the Makefile, so the version is now managed by the VERSION file +- Removed unused files, updated screenshots, moved images to the /assets folder and updated the relevant references in the README and Dockerfile + +# 1.0.0 (2024-03-1) + +- Updated the README with the commands to build the CSS and other relevant information +- Updated the screenshots and the labels in the Dockerfile +- Removed committed node_modules +- Added `make` command to validate the extension +- Removed the `/backend` directory as it is not in use +- Added a function to check if the server is ready +- Updated the Dockerfile to install dependencies and build the CSS +- Added a loading screen to be displayed while the MindsDB service is starting +- Configured Tailwind CSS for styling +- Forked repository from `collabnix/mindsdb-docker-extension`