@kodezen/storeengine-headless
v1.0.0
Published
Framework-agnostic SDK, hooks, components and Gutenberg bridge for headless StoreEngine storefronts. Next.js and Astro bindings included.
Readme
@kodezen/storeengine-headless
SDK, hooks, components, and Gutenberg bridge for StoreEngine headless storefronts on Next.js 16 + React 19.
npm i @kodezen/storeengine-headlessQuick start
// app/layout.tsx
import { StoreEngineProvider } from "@kodezen/storeengine-headless/providers";
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body>
<StoreEngineProvider
config={{
wpUrl: process.env.NEXT_PUBLIC_WP_URL!,
embedKey: process.env.STOREENGINE_EMBED_KEY,
}}
>
{children}
</StoreEngineProvider>
</body>
</html>
);
}// app/api/se/[...path]/route.ts
import { createProxyHandler } from "@kodezen/storeengine-headless/proxy";
const handler = createProxyHandler({
wpUrl: process.env.NEXT_PUBLIC_WP_URL!,
embedKey: process.env.STOREENGINE_EMBED_KEY,
});
export const GET = handler;
export const POST = handler;
export const PUT = handler;
export const PATCH = handler;
export const DELETE = handler;
export const OPTIONS = handler;What's in the box
| Path | Exports |
|---|---|
| @kodezen/storeengine-headless/sdk | Typed fetcher seFetch, paths(), every API function (products, cart, checkout, /me/*), every TS type |
| @kodezen/storeengine-headless/auth | useAuthSession, useAuth, authOpts, register, resetPassword |
| @kodezen/storeengine-headless/auth/server | createAuthRoutes, readSession, buildAuthorizeUrl — no React, safe on the server |
| @kodezen/storeengine-headless/cart | useCart Zustand store |
| @kodezen/storeengine-headless/providers | <StoreEngineProvider> |
| @kodezen/storeengine-headless/proxy | createProxyHandler() factory |
| @kodezen/storeengine-headless/hooks | useMe, useOrders, useDownloads, useSignedDownload, useProducts, useCheckout, …|
| @kodezen/storeengine-headless/wp | <WPContent>, <TemplatePart>, <ThemeJsonStyles>, listPages, getPageBySlug, … |
| @kodezen/storeengine-headless/format | formatPrice, formatDate |
Registry CLI
npx storeengine list # see available components
npx storeengine init # create storeengine.json
npx storeengine add storefront/product-cardComponents are copied into your project (shadcn-style) so you fully own and can customize them. Registry deps come along automatically, and files you already have are never overwritten.
Full command reference: docs/cli.md.
Two modes
- Custom UI — write your own React + Tailwind, use the SDK for data.
- Block Theme — pull layout + design from the active WP block theme via
<TemplatePart>and<ThemeJsonStyles>.
Mix-and-match per route.
Docs
License
MIT
