npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@xylex-group/athena-auth-ui

v1.7.0

Published

Plug and play HeroUI authentication components for Athena Auth

Readme

@xylex-group/athena-auth-ui

Athena Auth UI components implemented with HeroUI internally. The npm package is published as @xylex-group/athena-auth-ui; HeroUI is an implementation detail rather than part of the package name.

Install

bun add @xylex-group/athena-auth-ui

Required peer dependencies:

  • react
  • react-dom
  • @heroui/react
  • @heroui/styles
  • @better-auth-ui/core
  • @better-auth-ui/react
  • @xylex-group/athena
  • @tanstack/react-query
  • @tanstack/react-pacer
  • @gravity-ui/icons
  • @internationalized/date
  • bowser

Public API

The public API boundary is the package root:

import {
  AuthProvider,
  SignInPage,
  SettingsPage,
  createAthenaAuthClient,
  createAthenaAuthPlugins
} from "@xylex-group/athena-auth-ui"

Subpath imports are not part of the supported npm API. Components, page shells, email templates, plugin helpers, and Athena runtime utilities intended for consumers are exported from the root entrypoint.

Stable lower-level composition seams are also available from the root entrypoint for incremental adoption:

  • OrganizationManager
  • OrganizationSwitcher
  • SettingsSectionsStack
  • AuthTable
  • TableEmptyState
  • CheckEmail
  • ResetEmailSent

Athena Client Setup

import {
  AuthProvider,
  SignInPage,
  createAthenaAuthClient,
  createAthenaAuthPlugins
} from "@xylex-group/athena-auth-ui"

const authClient = createAthenaAuthClient()
const plugins = createAthenaAuthPlugins()

export function AuthScreen() {
  return (
    <AuthProvider authClient={authClient} plugins={plugins}>
      <SignInPage />
    </AuthProvider>
  )
}

Athena transport helpers are available from dedicated subpaths so server code does not need to import from the UI barrel:

import { createAthenaAuthClient, createAthenaServerAuthClient } from "@xylex-group/athena-auth-ui/athena/client"
import { createAthenaAuthProxyHandlers } from "@xylex-group/athena-auth-ui/athena/proxy"
import { createAthenaQueryClient } from "@xylex-group/athena-auth-ui/athena/query-client"
import { pickAthenaAuthRequestHeaders } from "@xylex-group/athena-auth-ui/athena/request-headers"

These helpers cover browser auth clients, server auth clients, Next.js route handlers, selective auth-header forwarding, and React Query setup for SSR and hydration.

Pages And Components

Route-ready page shells include:

  • AuthPage
  • CheckEmailPage
  • SignInPage
  • SignUpPage
  • ForgotPasswordPage
  • ResetEmailSentPage
  • ResetPasswordPage
  • SignOutPage
  • SettingsPage
  • AccountSettingsPage
  • SecuritySettingsPage

Standalone auth, settings, user, workspace, email, and plugin components intended for consumers are also exported from the root entrypoint.

OAuth Provider Control

Use ui.auth.methods.oauthProviders when you want to hide or disable specific social providers without reaching into the DOM:

import { SignInPage, type AthenaAuthUiOptions } from "@xylex-group/athena-auth-ui"

const ui: AthenaAuthUiOptions = {
  auth: {
    methods: {
      oauthProviders: {
        apple: "hidden",
        microsoft: "disabled"
      }
    }
  }
}

export function AuthScreen() {
  return <SignInPage ui={ui} />
}

Email Templates

import {
  EmailVerificationEmail,
  getAthenaAuthEmailTemplateCatalog
} from "@xylex-group/athena-auth-ui"

Each exported email component carries stable Athena Auth metadata such as templateKey, and the catalog helper can drive admin tooling or template selection UX.

Styling

Import HeroUI styles in your app and load the package styles entrypoint so Tailwind can scan the installed auth UI bundle:

@import "tailwindcss";
@import "@heroui/styles";
@import "@xylex-group/athena-auth-ui/styles";

License

MIT