• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
drewmcdonald

drewmcdonald

promptCompare

Public
Like
promptCompare
Home
Code
7
.claude
3
backend
2
docs
1
frontend
4
shared
.mcp.json
deno.json
Environment variables
2
Branches
1
Pull requests
Remixes
History
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
.claude
/
skills
/
ai-elements
/
references
/
environment-variables.md
Code
/
.claude
/
skills
/
ai-elements
/
references
/
environment-variables.md
Search
…
Viewing readonly version of main branch: v114
View latest version
environment-variables.md

Environment Variables

Display environment variables with masking and copy functionality.

The EnvironmentVariables component displays environment variables with value masking, visibility toggle, and copy functionality.

See scripts/environment-variables.tsx for this example.

Installation

npx ai-elements@latest add environment-variables

Features

  • Value masking by default
  • Toggle visibility switch
  • Copy individual values
  • Export format support (export KEY="value")
  • Required badge indicator

Props

<EnvironmentVariables />

PropTypeDefaultDescription
showValuesboolean-Controlled visibility state.
defaultShowValuesbooleanfalseDefault visibility state.
onShowValuesChange(show: boolean) => void-Callback when visibility changes.
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the container div.

<EnvironmentVariablesHeader />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the header div.

<EnvironmentVariablesTitle />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom title text.
...propsReact.HTMLAttributes<HTMLHeadingElement>-Spread to the h3 element.

<EnvironmentVariablesToggle />

PropTypeDefaultDescription
...propsReact.ComponentProps<typeof Switch>-Spread to the Switch component.

<EnvironmentVariablesContent />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the content div.

<EnvironmentVariable />

PropTypeDefaultDescription
namestringRequiredVariable name.
valuestringRequiredVariable value.
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the row div.

<EnvironmentVariableGroup />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the group div.

<EnvironmentVariableName />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom name content. Defaults to the name from context.
...propsReact.HTMLAttributes<HTMLSpanElement>-Spread to the span element.

<EnvironmentVariableValue />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom value content. Defaults to the masked/unmasked value from context.
...propsReact.HTMLAttributes<HTMLSpanElement>-Spread to the span element.

<EnvironmentVariableCopyButton />

PropTypeDefaultDescription
copyFormatunknown-Format to copy.
onCopy() => void-Callback after successful copy.
onError(error: Error) => void-Callback if copying fails.
timeoutnumber2000Duration to show copied state (ms).
...propsReact.ComponentProps<typeof Button>-Spread to the Button component.

<EnvironmentVariableRequired />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom badge text.
...propsReact.ComponentProps<typeof Badge>-Spread to the Badge component.
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2026 Val Town, Inc.