Documentation hub

Read the system from API to runtime behavior.

Guides, references, and examples for building with Enfyra's generated API, metadata model, database adapters, hooks, realtime, and operational surfaces.

reading pathsfrom docs
Enfyra Installation GuideEnfyra Installation Guide Prerequisites Node.js >= 20.0.0 Package manager (npm ≥8.0.0, yarn ≥1.22.0, or bun ≥1.0.0) Database server (MySQL, PostgreSQL, or MongoDB — MariaDB works via the mysql:// protocol) Redis server OR use Docker for a complete all-in-one setup (recommended foGetting StartedGetting Started After completing the installation of both Enfyra backend and app, follow these steps to get started. New to Enfyra? Start with the Installation Guide to set up your backend and frontend. First Login Navigate to your Enfyra app (default: http://localhost:3000 ) YouTable Creation GuideTable Creation Guide This guide walks you through creating your first table in Enfyra, from basic setup to understanding what happens after creation. Prerequisites : Make sure you've completed Installation and are familiar with the Getting Started Guide . Accessing Table CreationData ManagementData Management Data Management is where you create, view, edit, and delete records in your tables. After creating tables, you can access your data through Data in the sidebar, then select your table. Prerequisites : - Complete Installation and Getting Started Guide - Create at lEnfyra Docker - Usage GuideEnfyra Docker - Usage Guide New to Enfyra? See the Installation Guide for complete setup instructions, including Docker and manual installation options. Overview The enfyra/enfyra image can run in 3 different modes : all (default) - Run both server + app + embedded services serve

Getting Started

Getting Started This section helps you set up Enfyra, sign in for the first time, create your first table, and manage records through the admin app. If you are new to Enfyra, follow the pages in order. If you already have an instance running, use the quick navigation below to jum

Collection

Getting Started

Getting Started This section helps you set up Enfyra, sign in for the first time, create your first table, and manage records through the admin app. If you are new to Enfyra, follow the pages in order. If you already have an instance running, use the quick navigation below to jum

Enfyra Installation Guide

Enfyra Installation Guide Prerequisites Node.js >= 20.0.0 Package manager (npm ≥8.0.0, yarn ≥1.22.0, or bun ≥1.0.0) Database server (MySQL, PostgreSQL, or MongoDB — MariaDB works via the mysql:// protocol) Redis server OR use Docker for a complete all-in-one setup (recommended fo

Getting Started

Getting Started After completing the installation of both Enfyra backend and app, follow these steps to get started. New to Enfyra? Start with the Installation Guide to set up your backend and frontend. First Login Navigate to your Enfyra app (default: http://localhost:3000 ) You

Table Creation Guide

Table Creation Guide This guide walks you through creating your first table in Enfyra, from basic setup to understanding what happens after creation. Prerequisites : Make sure you've completed Installation and are familiar with the Getting Started Guide . Accessing Table Creation

Data Management

Data Management Data Management is where you create, view, edit, and delete records in your tables. After creating tables, you can access your data through Data in the sidebar, then select your table. Prerequisites : - Complete Installation and Getting Started Guide - Create at l

Enfyra Docker - Usage Guide

Enfyra Docker - Usage Guide New to Enfyra? See the Installation Guide for complete setup instructions, including Docker and manual installation options. Overview The enfyra/enfyra image can run in 3 different modes : all (default) - Run both server + app + embedded services serve

Architecture Overview

Architecture Overview Enfyra is a programmable backend platform. You define data, routes, permissions, hooks, handlers, flows, and realtime events as metadata, and Enfyra turns that metadata into a running API without restarting the server. This page explains the main moving part

Guide

API Reference

API Reference Guide for building your app with the Enfyra API. Use these endpoints to authenticate users, fetch and modify data, and work with files from your custom frontend, mobile app, or external service. All API requests use the app URL with the /api prefix. Base URL {appUrl

Collection

API Reference

API Reference Guide for building your app with the Enfyra API. Use these endpoints to authenticate users, fetch and modify data, and work with files from your custom frontend, mobile app, or external service. All API requests use the app URL with the /api prefix. Base URL {appUrl

API Overview

API Overview Essential details for calling the Enfyra API from your app. Base URL Format All Enfyra REST API endpoints use: {appUrl}/api/{path} Environment appUrl Example Local development http://localhost:3000 http://localhost:3000/api/me Production Your deployed app URL https:/

Authentication Endpoints

Authentication Endpoints All URLs use the base: {appUrl}/api POST /login Authenticate with email and password through the Enfyra app proxy. In SSR/cookie mode, the app stores Enfyra tokens in httpOnly cookies for you. URL: {appUrl}/api/login Request Body: { "email": "admin@exampl

CRUD Operations

CRUD Operations When you create a table in Enfyra (e.g. products, orders, customers), it automatically gets REST endpoints. Use them from your app to list, create, update, and delete records. Base: {appUrl}/api/{routePath} The route path matches your table name or custom route (e

Query Parameters

Query Parameters These parameters apply to GET requests for list endpoints (e.g. GET {appUrl}/api/user_definition ). fields Select which fields to return. Comma-separated list. Example: GET {appUrl}/api/user_definition?fields=id,email,name,role.name Use dot notation for related f

File & Storage

File & Storage Use these endpoints to upload files, organize them in folders, and serve assets from your app. Base: {appUrl}/api Files List files GET {appUrl}/api/file_definition?fields=id,filename,mimetype,size,folder&filter={"folder":{"_eq":123}} Upload file Use multipart/form-

Integrations

Integrations Use these guides when you want to connect an external app to Enfyra. Integration guides focus on framework setup: proxy rules, auth cookies, OAuth redirect flow, refresh behavior, and realtime transport. After the integration is in place, use the examples to build re

Collection

App

Enfyra App (Frontend) Documentation This section covers everything that runs in the Enfyra admin app (port 3000) – the UI, extensions, forms, permissions, and how the app talks to the backend server. The app is a pure API client : it never connects directly to your database. All

Collection

App

Enfyra App (Frontend) Documentation This section covers everything that runs in the Enfyra admin app (port 3000) – the UI, extensions, forms, permissions, and how the app talks to the backend server. The app is a pure API client : it never connects directly to your database. All

API Integration

API Integration Enfyra uses a local useApi composable that provides API interactions with enhanced error handling and additional features. The composable is built using $fetch and handles all HTTP requests to the Enfyra Server. From the app's perspective, all API calls go to the

Form System

Form System Enfyra's form system automatically generates forms from your database schema. Forms are dynamic, validated, and fully integrated with permissions and relations. How Forms Work When you create a table in Enfyra, the system automatically generates forms for creating and

Filter System

Filter System The Filter System helps you search and filter data in your tables. Instead of scrolling through many records, create search conditions to find exactly what you need. Look for the Filter button - it shows "Filter" normally, and "Filters (N)" when active. How to Filte

Relation Picker System

Relation Picker System The Relation Picker lets you select related records when working with forms. When you see a pencil icon next to a form field, that's a relation field that connects to records in another table. Instead of typing IDs, the Relation Picker provides a user-frien

Permission Builder

Permission Builder The Permission Builder is a visual interface for creating complex access control rules. Instead of writing permission code, you can build permission conditions using a drag-and-drop style interface with logical operators. Accessing Permission Builder Permission

Server

Enfyra Server Documentation This documentation covers the Enfyra server architecture, APIs, and development guides. It's organized to help you find information quickly, whether you're learning the basics or looking up specific details. New to Enfyra? Start with the Installation G

Collection

Server

Enfyra Server Documentation This documentation covers the Enfyra server architecture, APIs, and development guides. It's organized to help you find information quickly, whether you're learning the basics or looking up specific details. New to Enfyra? Start with the Installation G

API Lifecycle

API Lifecycle Understanding how API requests flow through Enfyra helps you build effective hooks and handlers. This guide explains the complete request lifecycle and how the context object flows through each phase. Quick Navigation Request Flow Overview - High-level lifecycle Pha

Query Filtering

Query Filtering Enfyra provides MongoDB-like filtering operators for querying data. HTTP / REST: pass the predicate as the filter query parameter (JSON in the query string). Handlers, hooks, flows ( $ctx.$repos.*.find , #table.find , etc.): pass the same predicate as filter or wh

Repository Methods

Repository Methods Repositories are the main way to interact with your database tables in Enfyra. Every table you create automatically gets a repository that you can access through $ctx.$repos.tableName . Quick Reference All repository methods return data in this format: { data:

Context Object ($ctx) Reference

Context Object ($ctx) Reference The $ctx (context) object is available in all hooks and handlers. It provides access to request data, database repositories, helper functions, cache operations, and more. Quick Navigation Request Data - $ctx.$body , $ctx.$params , $ctx.$query , $ct

Hooks and Handlers

Hooks and Handlers Hooks and handlers allow you to customize API behavior at different points in the request lifecycle. Hooks run before and after handlers, while handlers contain the main business logic. Quick Navigation Overview - What are hooks and handlers preHooks - Execute

Examples

Examples Use these examples when you want to see a complete Enfyra feature built from tables, routes, hooks, handlers, permissions, integrations, and app UI pieces. Each example focuses on a practical workflow instead of isolated API calls. For framework setup, read Integrations

Collection