Shared UI package for StructuredID applications. Provides Vue 3 composables, Pinia stores, protobuf-ts generated clients, and reusable components.
- Proto clients -- gRPC-Web clients generated from proto via protobuf-ts
- Composables --
useAuth,useAuthApi,useAccountApi,useIdentityApi,useSecurityLevel,useOpaqueAuth - Components --
SidLoginForm,SidRegistrationForm,SidMfaChallenge,SidPrincipalInput, profile management pages - Utilities --
normalizePrincipal,detectLoginInputType, validators, formatters
import { useAuth, getTransport, initGrpc } from "@structured-id/ui-core";
import { SidLoginForm } from "@structured-id/ui-core/profile";
// Initialize gRPC transport
initGrpc({ baseUrl: "http://localhost:9080" });yarn install
yarn build # Build library
yarn test # Run tests (vitest)
yarn typecheck # vue-tsc --noEmitsrc/
composables/ # Vue 3 composition API (useAuth, useAuthApi)
stores/ # Pinia stores (auth)
profile/ # Profile components and composables
components/ # SidLoginForm, SidRegistrationForm, SidMfaChallenge
composables/ # useOpaqueAuth, useAccountApi, useIdentityApi
utils/ # normalizePrincipal, validators, formatters
generated/ # protobuf-ts generated clients (do not edit)
proto/ # Proto definitions submodule
AGPL-3.0-only -- see LICENSE for details.