- Alert
- Autocomplete
- Badge
- CascaderCascader can now search the whole tree from any level
- Code Block
- Data GridData Grid now scrolls in RTL without an extra provider
- Date Selector
- Event Calendar
- File Upload
- Filters
- Frame
- Gantt
- Icon Stack
- Icon Tile
- Kanban
- Number Field
- Phone Input
- Rating
- Scrollspy
- Signature PadNew Signature Pad docs
- Sortable
- Stepper
- Time PickerNew Time Picker docs
- Timeline
- Tree
JetBrains Junie connects to ReUI in two quick steps: point it at the hosted MCP server, then sign in and start building UI by chat. The endpoint is https://mcp.reui.io, a remote server over Streamable HTTP, so there is nothing to run locally.
Connect ReUI
Add the ReUI MCP server
Open Settings → Tools → Junie → MCP Settings and click the edit action to open mcp.json, or edit the file directly: ~/.junie/mcp/mcp.json for every project, .junie/mcp/mcp.json in the repository root for this project only. Remote servers need a 2025.3 or later IDE build.
{
"mcpServers": {
"reui": {
"url": "https://mcp.reui.io"
}
}
}Keep the server name short: Junie rejects long names in the JSON file. The same mcpServers shape is accepted when you paste it into the New MCP Server dialog.
Sign in with ReUI
The first time Junie calls a ReUI tool, a browser window opens to authorize the connection. Click "Sign in with ReUI" to complete the OAuth flow; Junie is the JetBrains agent with its own browser OAuth flow, so no token is needed for normal use. If you do not have a ReUI account yet, a free one is created for you in that same flow, so there is nothing to set up in advance.
For headless or CI use where no browser is available, create a personal token at Account → MCP and send it as an Authorization header instead:
{
"mcpServers": {
"reui": {
"url": "https://mcp.reui.io",
"headers": {
"Authorization": "Bearer your-personal-token"
}
}
}
}This header is an alternative to the browser sign-in, not an addition to it. It is sent on every request and takes precedence over any OAuth session, so remove it when you want the browser sign-in back. A ReUI license key works in the same header for licensed installs.
The ReUI skill
There is nothing to install. The build workflow rides on the MCP: once reui is connected, ask JetBrains Junie to call get_agent_skill and it returns the full ReUI workflow (the reuse-first rule and the find, read the real API, install, then adapt order) inline as a document. If a build drifts off-pattern, tell it to "follow the ReUI skill" to reload that workflow.
Build with ReUI
Describe the interface you want in plain language and JetBrains Junie pulls the right ReUI components, examples and blocks from the registry, then wires them into your project. A few prompts to start with:
Use ReUI to scaffold an admin app - the app-shell with a collapsible sidebar and top bar, and a dashboard page with stat cards and a chart.Add a data-grid of orders with sorting, column filters, pagination, and row selection, wired to my /api/orders endpoint.Add a kanban board for support tickets with drag and drop, grouped by status, and a filters bar above it.Unlock premium items
Free items (the 24 components and every c-* example) install with no license. To let JetBrains Junie install premium blocks and icons too, grab a Pro or Ultimate license and add the key to your project:
Add your license key
Copy your key from Account → Licenses into .env.local at the project root:
REUI_LICENSE_KEY=your-license-key-hereAdd the @reui registry to components.json
{
"registries": {
"@reui": {
"url": "https://reui.io/r/{style}/{name}.json",
"headers": {
"Authorization": "Bearer ${REUI_LICENSE_KEY}"
}
}
}
}The shadcn CLI expands ${REUI_LICENSE_KEY} from your environment, so leave it as a variable here. See License Setup for the full guide, including monorepos.
Troubleshooting
- Tools missing or the server shows as disconnected - the connection did not finish. Check the config file for a typo in the URL, then restart JetBrains Junie.
- 401 after signing in through the browser - your ReUI session expired. Sign in to
reuiagain from the MCP panel. - 401 with a personal token - the token has expired or been revoked. Signing in again will not help: create a new token at Account → MCP and update the header.
- Sign-in works but every call still 401s - an
Authorizationheader on the server entry overrides the browser session. Remove it, or make sure it carries a valid token.