createApp
createApp<
TSchema,TPermissions>(config):App<TSchema,TPermissions,unknown,unknown>
Defined in: packages/core/src/create-app.ts:36
Creates a cfast application instance that wires env, permissions, and plugins into a typed per-request context.
Call .use(plugin) to register plugins, then use app.context(request, context) in route
loaders/actions to build the per-request context with all plugin values.
Type Parameters
Section titled “Type Parameters”TSchema
Section titled “TSchema”TSchema extends Schema
TPermissions
Section titled “TPermissions”TPermissions extends Permissions
Parameters
Section titled “Parameters”config
Section titled “config”CreateAppConfig<TSchema, TPermissions>
Application configuration containing the env schema and permissions definition.
Returns
Section titled “Returns”App<TSchema, TPermissions, unknown, unknown>
An App instance with methods for context creation, route helpers, and plugin registration.
Example
Section titled “Example”import { createApp } from '@cfast/core';import { authPlugin } from '@cfast/auth';import { envSchema } from './env';import { permissions } from './permissions';
export const app = createApp({ env: envSchema, permissions }) .use(authPlugin({ magicLink: { sendMagicLink: async ({ email, url }) => {} } }));