Shared Hono utilities for Cloudflare Pages Functions and Node.
No OIDC userinfo URLs or tenant config embedded. Callers pass endpoints explicitly.
npm install @coderic/api-core @coderic/acl honoGitHub Packages:
@coderic:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}Repo: https://github.com/Coderic/coderic-api-core
| Import | Symbols |
|---|---|
@coderic/api-core | PortalError, error helpers |
@coderic/api-core/hono | registerOnError, cacheControlMiddleware, createRequireAuth, getAuthUser, createHealthRoute, createAccountRoute |
import{Hono}from"hono";import{registerOnError,cacheControlMiddleware,createHealthRoute,createAccountRoute,}from"@coderic/api-core/hono";constapp=newHono();registerOnError(app);app.use("*",cacheControlMiddleware);app.route("/health",createHealthRoute());app.route("/account",createAccountRoute("https://auth.example.com/userinfo"));import{createRequireAuth,getAuthUser}from"@coderic/api-core/hono";constrequireAuth=createRequireAuth({resolveUser: async(c)=>{/* AuthPrincipal | null */},});app.get("/me",requireAuth,(c)=>c.json(getAuthUser(c)));Or use @coderic/acl/honocreateRequireAuth when you only need ACL integration.
- Root
package.json:@coderic/api-core+@coderic/aclforfunctions/api/**. - Portal-specific
OIDC_USERINFO_URL(e.g.https://auth.coderic.org/userinfo) stays in each portal'sfunctions/api/auth/resolve-user.ts— not in this package. - Do not expect
OIDC_USERINFO_URLexport from@coderic/api-core.
MIT