Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

OAuth Apps Settings Block for React

An OAuth apps settings window with a list of registered apps beside the chosen app's client ID, a masked secret with a confirmed Roll secret, redirect URIs that are checked when added, and grouped scopes with the consent sentence they produce.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Let developers manage the apps that sign people in, with this OAuth apps settings window for React with Base UI. A framed window with a top bar holds a list of the registered apps, each a tile with two letters, a name and its kind (confidential or public) with how many redirect URIs it has, beside the chosen app's detail. The detail shows the client ID in a read-only Input with a real Copy Button, and the client secret masked down to its last four characters with Roll secret, which opens an Alert Dialog that says the old secret keeps working for 24 hours; confirming shows the new secret once with a Copy button, the day the old one stops, and a Hide it button. The redirect URIs are a list with Remove buttons and an add form that refuses wildcards, fragments, anything that isn't a full URL, plain http except for localhost, duplicates and a sixth entry, and says why. The scopes are grouped Checkboxes (Profile, Content, Administration), and a sentence above them is the consent screen people will read, rewritten as you tick. Changes apply on the spot and a status line at the foot of the window says what changed. On a phone the list and the detail are one pane at a time with a Back button. It's built from Input, Copy Button, Alert Dialog, Checkbox, Badge, Button and Guides, with a CSS entrance only. For a developer platform, an API product or any service that issues client credentials.

FAQ

How do I fill it with my own apps?

Edit APPS at the top: each app has a name, its kind, the client ID, the last four characters of its secret (empty for a public app), its redirect URIs and its scopes. SCOPES lists every scope with its group, a hint and the phrase the consent sentence uses, and FRESH holds the secrets a roll hands out, in order. The list rows, the counts, the consent sentence and the "2 of 5" counters are all worked out from the app, so nothing is typed twice. Your API should send a secret only once, when it is made.

What does the redirect URI form accept?

A full URL on https, or an http address on localhost or 127.0.0.1 for development. It refuses an empty entry, a wildcard, a fragment, text that isn't a URL, plain http anywhere else, an address that is already registered, and a sixth one, and it names the reason under the field, keeping what you typed. An app can't lose its last redirect URI: its Remove button stays on the page and says so instead. Matching must be exact when you wire it to a real authorization server, so keep wildcards out there too.

How does Roll secret work, and what stays local?

The button opens an alert dialog with focus on its cancel button, which doesn't close when you click outside it. Confirming makes the next secret from a short typed list, shows it once in monospace with a Copy button and says the old one works for 24 hours, until the day after the page's fixed date. Hide it, or opening another app, hides it for good and leaves only the last four characters. Nothing is generated, stored or sent: the secrets are fictional and the clipboard is the only real thing. To make it real, call your API from the confirm handler and show what it returns once.

Why does a public app have no secret?

A public app, such as one that runs in a browser or on a phone, can't keep a secret, so it signs in with PKCE instead and has nothing to roll. Its secret section says so and keeps the same height as a confidential app's, so switching apps doesn't move the redirect URIs below it. The kind comes from the app's data, so a confidential app gets the masked secret and Roll secret.

How does it look on a phone, and is it accessible?

Below the large breakpoint the window shows one pane: the list, then the detail after you choose an app, with a Back button that returns focus to the app's row. The window keeps its fixed height and the detail scrolls inside it. The apps are native buttons with aria-current, the detail is a labelled region you can scroll from the keyboard, each scope checkbox is named by its scope and described by its hint, and the status line is a polite live region present from the start.

  • Pro

    Access Token Hygiene Settings

    Sign-in and security

    An access token settings panel that flags risky tokens (no end date, unused for 90 days, the admin scope, ending soon), gives a token an end date from a menu, and revokes the ticked ones after an alert dialog lists them.

  • Pro

    API Key Builder Settings

    API and webhooks

    An API key settings panel with a table of keys, a builder that sets None, Read or Write for each resource, and a try-a-request check that answers Allowed or Denied with the reason before anything is saved.

  • Pro

    A webhook endpoint settings sheet open over the endpoint list: an https URL, an event tree with mixed-state group checkboxes, a signing secret with Roll secret, and recent deliveries where a failed one can be resent with its signature worked out in the browser.

  • Pro

    SAML Setup Settings

    Sign-in and security

    A SAML single sign-on setup sheet shown open over a drawn security page: copy two values, paste the provider's metadata and see what is found (including the certificate's end day read from the certificate), run a local test, then enforce.

  • Pro

    Identity Provider Settings

    Sign-in and security

    An identity provider settings panel with a protocol picker, an https-only issuer, a masked client secret, a claim mapping table that shows what each claim resolves to in a sample token tree, and a provisioning rule.

  • Pro

    API Key Dialog

    Account and security

    A keys page with its create-key dialog shown open: a name, scopes and an expiry in the first step, then the secret shown once, masked behind an eye button, with a Copy button and a box that has to be ticked before Done.