Entity Browser

Full CRUD on every entity. Inline editing, search, sort, export, bulk operations — no queries needed.

Inline Editing

Click any cell to edit it in place. Changes are saved immediately to the database — no separate edit page needed.

Search & Sort

Full-text search across all fields. Click column headers to sort ascending or descending. Pagination built in.

Export (CSV / JSON)

Export any entity's records as CSV or JSON with a single click. Filtered results are exported as-is.

Bulk Delete

Select multiple records with checkboxes and delete them in one operation. Supports both soft delete and hard destroy.

Entity Designer

Visual entity schema editor. Add fields, set types, configure validation rules — all from the console UI.

10 Field Types

Text, int, float, decimal, bool, time, file, money, semantic text, and enum. Every type is rendered with an appropriate editor.

Field Types & Validation

Every entity field is rendered with a type-appropriate editor and validated using FLIN's 49 built-in decorators.

10 Supported Field Types

  • text — Strings, rendered as text inputs. Supports @email, @url, @minLength, @maxLength.
  • int — Integers, rendered as number inputs. Supports @min, @max.
  • float / decimal — Floating-point and fixed-precision numbers. Decimal preserves precision for financial data.
  • bool — Boolean toggle, rendered as a switch in the entity browser.
  • time — Timestamps, rendered as date-time pickers.
  • file — File references, rendered with upload controls.
  • money — Currency values stored in cents, displayed with formatting.
  • semantic text — Text with vector embeddings for AI-powered semantic search.
  • enum — Constrained values from a defined enum type, rendered as a select dropdown.

49 Validation Decorators

Attach validation rules directly to entity fields. The console enforces them on both create and edit operations.

  • @required @email @url @uuid @ip — Format validators
  • @minLength(n) @maxLength(n) @min(n) @max(n) — Range validators
  • @one_of("a", "b", "c") @pattern("regex") — Constraint validators
  • @default(value) @unique @index — Schema modifiers

Define an Entity, Browse It Instantly

Write your entity definition. The console auto-discovers it and provides a full management interface.

entities/product.flin
enum Category { Electronics, Clothing, Books, Home, Sports }

entity Product {
    name: text @required @minLength(2)
    description: semantic text
    category: Category = "Electronics"
    price: money @min(0)
    stock: int @min(0) = 0
    active: bool = true

    @index(category, active)
    @unique(name)
}

// That's it. Open /_flin → Entities → Product
// Full CRUD, search, sort, export — all automatic.

Auto-Generated REST Endpoints

Every entity automatically gets a complete REST API. The console uses these same endpoints internally.

MethodEndpointDescription
GET/_flin/api/entitiesList all entity types with field schemas
GET/_flin/api/entities/:name/recordsPaginated records with search, sort, and filter parameters
POST/_flin/api/entities/:name/recordsCreate a new record with validation
PUT/_flin/api/entities/:name/records/:idUpdate an existing record by ID
DELETE/_flin/api/entities/:name/records/:idSoft delete a record (sets deleted_at)
POST/_flin/api/queryExecute arbitrary FLIN queries against any entity

No Admin Panel Plugin Required

In Django, you register models in admin.py. In Rails, you install ActiveAdmin. In Laravel, you set up Filament. In FLIN, every entity is browsable and editable the moment you define it. The entity browser is embedded in the runtime — zero dependencies, zero configuration.