Skip to main content
Glama
vite.config.ts4.77 kB
/// <reference types="vitest" /> import { defineConfig, loadEnv } from "vite"; import react from "@vitejs/plugin-react"; import svgr from "vite-plugin-svgr"; import path from "path"; // https://vite.dev/config/ export default defineConfig(({ command, mode }) => { const env = loadEnv(mode, process.cwd(), ""); const getEnvDefaults = () => { switch (mode) { case "development": return { VITE_AUTH0_DOMAIN: process.env.VITE_AUTH0_DOMAIN || "dev-b8usc66hvtpq73zg.us.auth0.com", VITE_AUTH0_CLIENT_ID: process.env.VITE_AUTH0_CLIENT_ID || "p9jPXhmCFuZOhrrqNLXiLrFIuPWSSOEO", VITE_AUTH0_AUDIENCE: process.env.VITE_AUTH0_AUDIENCE || "mcpx-webapp", VITE_ENABLE_ENTERPRISE: process.env.VITE_ENABLE_ENTERPRISE || "false", VITE_MCPX_SERVER_URL: process.env.VITE_MCPX_SERVER_URL || undefined, VITE_MCPX_SERVER_PORT: process.env.VITE_MCPX_SERVER_PORT || "9000", VITE_AUTH_BFF_URL: process.env.VITE_AUTH_BFF_URL || "http://localhost:3002", }; case "production": return { VITE_AUTH0_DOMAIN: process.env.VITE_AUTH0_DOMAIN || "", VITE_AUTH0_CLIENT_ID: process.env.VITE_AUTH0_CLIENT_ID || "", VITE_AUTH0_AUDIENCE: process.env.VITE_AUTH0_AUDIENCE || "mcpx-webapp", VITE_ENABLE_ENTERPRISE: process.env.VITE_ENABLE_ENTERPRISE || "false", VITE_MCPX_SERVER_URL: process.env.VITE_MCPX_SERVER_URL || undefined, VITE_MCPX_SERVER_PORT: process.env.VITE_MCPX_SERVER_PORT || "9000", VITE_AUTH_BFF_URL: process.env.VITE_AUTH_BFF_URL || "", }; default: return { VITE_AUTH0_DOMAIN: process.env.VITE_AUTH0_DOMAIN || "dev-b8usc66hvtpq73zg.us.auth0.com", VITE_AUTH0_CLIENT_ID: process.env.VITE_AUTH0_CLIENT_ID || "p9jPXhmCFuZOhrrqNLXiLrFIuPWSSOEO", VITE_AUTH0_AUDIENCE: process.env.VITE_AUTH0_AUDIENCE || "mcpx-webapp", VITE_ENABLE_ENTERPRISE: process.env.VITE_ENABLE_ENTERPRISE || "false", VITE_MCPX_SERVER_URL: process.env.VITE_MCPX_SERVER_URL || undefined, VITE_MCPX_SERVER_PORT: process.env.VITE_MCPX_SERVER_PORT || "9000", VITE_AUTH_BFF_URL: process.env.VITE_AUTH_BFF_URL || "http://localhost:3002", }; } }; const envDefaults = getEnvDefaults(); return { plugins: [react(), svgr()], test: { globals: true, environment: "happy-dom", setupFiles: "./src/test/setup.ts", css: false, threads: false, include: ["src/**/*.test.{ts,tsx}"], // Only look for .test.ts files in src exclude: ["e2e/**/*", "node_modules/**/*"], // ignore e2e }, server: { allowedHosts: true, }, resolve: { alias: { "@": path.resolve(__dirname, "./src"), }, extensions: [".mjs", ".js", ".jsx", ".ts", ".tsx", ".json"], }, build: { commonjsOptions: { include: [/shared-model/, /node_modules/], }, }, optimizeDeps: { include: [ "@mcpx/shared-model", "monaco-yaml/yaml.worker.js", "monaco-editor/esm/vs/editor/editor.worker.js", "monaco-editor/esm/vs/language/json/json.worker.js", ], esbuildOptions: { loader: { ".js": "jsx", }, }, }, define: { __DEV__: mode === "development", __STAGING__: mode === "staging", __PROD__: mode === "production", "import.meta.env.VITE_AUTH0_DOMAIN": JSON.stringify( env.VITE_AUTH0_DOMAIN || envDefaults.VITE_AUTH0_DOMAIN, ), "import.meta.env.VITE_AUTH0_CLIENT_ID": JSON.stringify( env.VITE_AUTH0_CLIENT_ID || envDefaults.VITE_AUTH0_CLIENT_ID, ), "import.meta.env.VITE_AUTH0_AUDIENCE": JSON.stringify( env.VITE_AUTH0_AUDIENCE || envDefaults.VITE_AUTH0_AUDIENCE, ), "import.meta.env.VITE_ENABLE_ENTERPRISE": JSON.stringify( env.VITE_ENABLE_ENTERPRISE || envDefaults.VITE_ENABLE_ENTERPRISE, ), "import.meta.env.VITE_MCPX_SERVER_URL": JSON.stringify( env.VITE_MCPX_SERVER_URL || envDefaults.VITE_MCPX_SERVER_URL, ), "import.meta.env.VITE_MCPX_SERVER_PORT": JSON.stringify( env.VITE_MCPX_SERVER_PORT || envDefaults.VITE_MCPX_SERVER_PORT, ), "import.meta.env.VITE_WS_URL": JSON.stringify( env.VITE_WS_URL || undefined, ), "import.meta.env.VITE_OAUTH_CALLBACK_BASE_URL": JSON.stringify( env.VITE_OAUTH_CALLBACK_BASE_URL || undefined, ), "import.meta.env.VITE_AUTH_BFF_URL": JSON.stringify( env.VITE_AUTH_BFF_URL || envDefaults.VITE_AUTH_BFF_URL, ), }, }; });

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TheLunarCompany/lunar'

If you have feedback or need assistance with the MCP directory API, please join our Discord server