
Security News
NVD Concedes Inability to Keep Pace with Surging CVE Disclosures in 2025
Security experts warn that recent classification changes obscure the true scope of the NVD backlog as CVE volume hits all-time highs.
@ory/elements-react
Advanced tools
Ory Elements React - a collection of React components for authentication UIs.
Ory Elements is a set of components and functions tailored for easy integration of Ory into your React application. It simplifies the process of adding authentication and other identity features to your application using the Ory Network.
Visit https://ory.sh/docs to see the full Ory documentation.
Requirements
>= 18
>= 18
@ory/client-fetch
- fetch based version of ory clientInstallation
npm install @ory/elements-react
[!IMPORTANT]
Please take a look at the local develepmont documentation \
Ory Elements provides components that can aggregate flow objects and display user authentication flows based on the data.
To feed Ory Elements with flow data you need to use Ory client.
import { frontendClient } from "@ory/client-fetch"
export function serverClientFrontend() {
// For testing purposes we're using Ory tunnel
return frontendClient("http://localhost:4000", {
headers: {
Accept: "application/json",
},
})
}
The Ory Identities APIs come with the ability to specify custom UI URLs. To make sure, Ory knows about your custom UI, specify the URLs of your application on https://console.ory.sh/projects/current/ui.
Initializing a new flow is done by navigating the user's page to the initialize flow URL. After creating a new flow object, Ory will return a redirect to the flow UI URL and, in some cases, return anti-CSRF cookies.
export function init(params: QueryParams, flowType: FlowType) {
// Take advantage of the fact, that Ory handles the flow creation for us and redirects the user to the default return to automatically if they're logged in already.
return redirect(
"http://localhost:4000" +
"/self-service/" +
flowType.toString() +
"/browser?" +
new URLSearchParams(params).toString(),
RedirectType.replace,
)
}
FlowType can be: login
, registration
, recovery
, verification
,
settings
or error
To access & render the flow, on your flow page, you can use the flow
query
parameter, that is included in the redirect. Use it to call the
getLoginFlow()
API.
Full Example:
export async function getOrCreateRegistrationFlow(
params: QueryParams
): Promise<RegistrationFlow> {
const onRestartFlow = () => init(params, FlowType.Registration);
// If flow ID doesn't exist in params simply trigget the init function.
if (!params.flow) {
return onRestartFlow();
}
return await serverClientFrontend()
// Passing the flow ID
.getRegistrationFlowRaw({ id: flow })
.then(res => res.value())
.catch(
// Ory Elements predefines the handleFlowError function to simplify error handling.
// You can define what should happen in each of these callbacks
handleFlowError({
onValidationError,
onRestartFlow,
onRedirect,
})
);
```
As soon as we have our flow data we can render the <Registration/>
component
from @ory/elements-react
package.
export default async function RegistrationPage({ searchParams }: PageProps) {
const flow = await getOrCreateRegistrationFlow(searchParams)
if (!flow) {
return <div>Flow not found</div>
}
return (
<Registration
flow={flow}
config={oryConfiguration}
components={ComponentOverrides}
/>
)
}
To include the default styles, add the following import to your app. Make sure it's included on all pages, that use Ory Elements.
import "@ory/elements-react/theme/styles.css"
Most styling can be overwritten, by providing your own custom CSS variables:
:root {
/* To override the text color of the primary buttons */
--button-primary-fg-default: #fffeee;
}
To develop and use the package npm link
is recommended. To run the package in
watch mode use
npx nx run @ory/elements-react:dev
FAQs
Ory Elements React - a collection of React components for authentication UIs.
The npm package @ory/elements-react receives a total of 865 weekly downloads. As such, @ory/elements-react popularity was classified as not popular.
We found that @ory/elements-react demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Security experts warn that recent classification changes obscure the true scope of the NVD backlog as CVE volume hits all-time highs.
Security Fundamentals
Attackers use obfuscation to hide malware in open source packages. Learn how to spot these techniques across npm, PyPI, Maven, and more.
Security News
Join Socket for exclusive networking events, rooftop gatherings, and one-on-one meetings during BSidesSF and RSA 2025 in San Francisco.