Installation
Installation
Installation
@audelabs/formic-client is hosted in the private Audelabs Gitea npm registry.
External projects must configure the @audelabs scope before installing the
package.
Registry Setup
Add this .npmrc to the consuming project:
@audelabs:registry=https://git.audelabs.com/api/packages/Audelabs/npm/
No token is required for public packages. Add an auth token only when consuming private packages from the same registry, and never commit a literal token value to the repository — use environment variables instead.
Security Note: Your Formic API key authenticates all form submissions. Always store it in environment variables (e.g.,
FORMIC_API_KEY) and never expose it in client-side code. See the Authentication guide for best practices on keeping your API key secure.
Install @audelabs/formic-client in your project:
npm install @audelabs/formic-client
# or
pnpm add @audelabs/formic-client
# or
yarn add @audelabs/formic-client
Peer Dependencies
The client has optional peer dependencies depending on your framework:
Astro
npm install astro
Next.js
npm install next
Remix
npm install @remix-run/node @remix-run/react
TypeScript
This package is written in TypeScript and includes type definitions out of the box. No additional @types packages are required.
Framework-Specific Setup
Astro
The adapter is included automatically. Just import and use:
// src/pages/api/submit.ts
import { handleFormicRequest } from '@audelabs/formic-client/adapters/astro';
export const POST = handleFormicRequest({
apiKey: import.meta.env.FORMIC_API_KEY,
slug: 'my-form'
});
Next.js (App Router)
// app/api/submit/route.ts
import { handleFormicRequest } from '@audelabs/formic-client/adapters/next';
export const POST = handleFormicRequest({
apiKey: process.env.FORMIC_API_KEY!,
slug: 'my-form'
}).POST;
Next.js (Pages Router)
// pages/api/submit.ts
import { handleFormicRequest } from '@audelabs/formic-client/adapters/next';
export default handleFormicRequest({
apiKey: process.env.FORMIC_API_KEY!,
slug: 'my-form'
});
Remix
// app/routes/submit.tsx
import { handleFormicRequest } from '@audelabs/formic-client/adapters/remix';
export const action = handleFormicRequest({
apiKey: process.env.FORMIC_API_KEY!,
slug: 'my-form'
});
Environment Variables
Make sure to set your Formic API key in your application environment:
FORMIC_API_KEY=your-api-key-here
You can get your API key from the Formic dashboard.