Hooks. TypeScript. Done.
Monaiq's React SDK gives you hooks-based license enforcement with full TypeScript support. Install from npm, wrap your app in a provider, and gate features with a single hook call.
npm install @sidub-inc/licensing-clientWhy licensing React apps is hard
Most licensing tools were built for server-side languages. They assume you have a backend, a database, and a secure runtime. React developers get an afterthought — a REST API with no React bindings, no hooks, and no type safety.
Client-side verification matters. Your React app needs to check entitlements without round-tripping to your server on every render. It needs to handle loading states, cache authorization data, and degrade gracefully when offline. That's not a wrapper around a REST call — that's a purpose-built SDK.
Monaiq's React SDK is TypeScript-first, hooks-native, and handles cryptographic signature validation in the browser. It fits the way React developers already build — context providers, custom hooks, and declarative patterns.
Built for the React ecosystem
Native hooks, not a wrapper around a REST client.
React Hooks
useLicenseAuthorization, useAssertion, useLicenseFeature — purpose-built hooks for license enforcement. Reactive, memoized, and SSR-compatible.
Context Provider
LicensingProvider wraps your app once. Every component below gets automatic access to the licensing client — no prop drilling, no manual instantiation.
Full Type Safety
TypeScript-first API with full type definitions. Assertions, features, and authorization objects are all strongly typed — your editor knows what's valid.
Cryptographic Verification
Built-in signature validation using Web Crypto API. License authorizations are cryptographically verified in the browser — matching the .NET SDK's security model.
Offline-Capable
Assertions evaluate locally against cached authorization data. Your app keeps working when the network is unreachable — no spinner, no degradation.
Framework Agnostic
Works with Next.js, Remix, Vite, Create React App, and vanilla React. Anywhere React runs, Monaiq's hooks work — including server components with client boundaries.
From npm install to feature gating in minutes
Wrap your app in a provider. Gate features with a hook. Ship it.
import { LicensingProvider } from '@sidub-inc/licensing-client';
// 1. Wrap your app with the provider
<LicensingProvider config={{
licenseServiceUri: 'https://api.monaiq.com/licensing',
encodedCredential: 'SIDUB_LIC_...'
}}>
<App />
</LicensingProvider>import {
useLicenseAuthorization,
useAssertion,
ServiceAccessAssertion,
ServiceAccessLevel
} from '@sidub-inc/licensing-client';
// 2. Check authorization in any component
const { authorization, loading } = useLicenseAuthorization();
const hasAccess = useAssertion(
ServiceAccessAssertion.create('premium-feature', ServiceAccessLevel.Allowed),
authorization
);
return hasAccess ? <PremiumDashboard /> : <UpgradePrompt />;Works with your React stack
Same SDK, same hooks, every React framework.