From b99dd16343e7f80eda32a7c7b19d85e33a2cf34b Mon Sep 17 00:00:00 2001 From: Chris Wanstrath Date: Sun, 1 Mar 2026 09:57:13 -0800 Subject: [PATCH] Add dashboard view for global env vars --- apps/env/20260130-000000/index.tsx | 37 ++++++++++++++++++++++----- apps/env/20260130-000000/package.json | 3 ++- 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/apps/env/20260130-000000/index.tsx b/apps/env/20260130-000000/index.tsx index 945da19..fa74ff0 100644 --- a/apps/env/20260130-000000/index.tsx +++ b/apps/env/20260130-000000/index.tsx @@ -300,9 +300,35 @@ app.get('/', async c => { const appName = c.req.query('app') if (!appName) { + // Dashboard view: global env vars only + const globalVars = parseEnvFile(GLOBAL_ENV_PATH) + return c.html( - - Please specify an app name with ?app=<name> + + {globalVars.length === 0 ? ( + No global environment variables + ) : ( + + {globalVars.map(v => ( + + {v.key} + {'••••••••'} + + +
+ Delete +
+
+
+ ))} +
+ )} +
+ + + +
+ Global vars are available to all apps. Changes take effect on next app restart.
) } @@ -437,7 +463,6 @@ app.post('/delete', async c => { app.post('/set-global', async c => { const appName = c.req.query('app') - if (!appName) return c.text('Missing app', 400) const body = await c.req.parseBody() const key = String(body.key).trim().toUpperCase() @@ -455,17 +480,17 @@ app.post('/set-global', async c => { } writeEnvFile(GLOBAL_ENV_PATH, vars) - return c.redirect(`/?app=${appName}&tab=global`) + return c.redirect(appName ? `/?app=${appName}&tab=global` : '/') }) app.post('/delete-global', async c => { const appName = c.req.query('app') const key = c.req.query('key') - if (!appName || !key) return c.text('Missing app or key', 400) + if (!key) return c.text('Missing key', 400) const vars = parseEnvFile(GLOBAL_ENV_PATH).filter(v => v.key !== key) writeEnvFile(GLOBAL_ENV_PATH, vars) - return c.redirect(`/?app=${appName}&tab=global`) + return c.redirect(appName ? `/?app=${appName}&tab=global` : '/') }) export default app.defaults diff --git a/apps/env/20260130-000000/package.json b/apps/env/20260130-000000/package.json index 6d5864e..cac9217 100644 --- a/apps/env/20260130-000000/package.json +++ b/apps/env/20260130-000000/package.json @@ -10,7 +10,8 @@ }, "toes": { "tool": ".env", - "icon": "🔑" + "icon": "🔑", + "dashboard": true }, "devDependencies": { "@types/bun": "latest"