Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

1,201 Commits

Repository files navigation

AgentifUI – Enterprise-Grade Intelligent Chat Platform

Community Edition – Apache 2.0 Enterprise Edition – Commercial License (contact license@iflabx.com) Maintained by the ifLabX community and sponsored by ifLabX Corp.

AgentifUI is a modern, multi-device intelligent-chat front-end built with the Next.js 15 App Router. By combining Supabase Auth, Dify API, Zustand state management and layered data services, it delivers a secure, scalable and easy-to-maintain LLM chat experience—ideal for corporate knowledge bases, AI assistants and other enterprise scenarios.

EditionLicenseScope & Extras
CommunityApache 2.0Core chat UI, REST/GraphQL API, single-tenant
EnterpriseProprietary✅ Multi-tenant ✅ SAML/LDAP ✅ SLA & Support ✅ Brand-removal/OEM

✨ Key Features

  • Responsive chat UI (desktop & mobile)
  • Multiple apps / conversation management
  • Message persistence with resume-from-breakpoint
  • Dify API integration with streaming responses
  • Supabase authentication & role-based access
  • Encrypted API-key storage and per-user / per-instance key rotation
  • High-performance message pagination & caching
  • Light/Dark theme switch & a11y-friendly components
  • Robust error handling and real-time state sync

🛠 Tech Stack

LayerTools
FrameworkNext.js 15 (App Router), React 18, Tailwind CSS 4
StateZustand
Back end-as-a-ServiceSupabase (Auth + Postgres DB + Storage)
LLM / Chat APIDify, OpenAI, others
Utilitiesclsx/cn, Lucide Icons, lodash, date-fns
LanguageTypeScript everywhere

🔗 Architecture Overview

UI Components (React)
↓
Custom Hooks (use-*)
↓
DB Access Layer (lib/db/*)
↓
Service Layer (lib/services/*)
↓
Supabase Client

Core Design Highlights

AreaWhy it matters
SecurityRelies on DB-verified conversation IDs only—no transient state writes, guaranteeing consistency.
MaintainabilitySeamless conversion between temporary IDs, Dify IDs and DB IDs makes the data-flow resilient.
Easy IntegrationEncrypted API-key vault, per-user/instance key scope and graceful fallback mechanism.
Data SovereigntyStrict end-to-end TypeScript types + Supabase RLS ensure row-level isolation.

🚀 Quick Start (Community Edition)

🏃‍♂️ Quick Server Deployment

📋 New to deployment? See our streamlined guide: docs/QUICK-DEPLOYMENT.md

# Quick deployment on Ubuntu/Debian server# Installs: NVM, pnpm, PM2, Supabase CLI, Docker, Dify, AgentifUI# Follow the 13-step guide in docs/QUICK-DEPLOYMENT.md

💻 Local Development

For local development and testing:

# 1 — Install dependencies
pnpm install
# 2 — Copy environment template and configure
cp .env.example .env.local
# Edit .env.local with your Supabase and other settings# 3 — Run development server
pnpm run dev
# 4 — Open your browser
http://localhost:3000

Prerequisites for local development:

  • Node.js 18+ (22+ recommended)
  • pnpm 9+
  • Supabase account or local Supabase instance

Development Tools

The project includes comprehensive code quality and formatting tools:

# Format all code
pnpm run format
# Check code formatting
pnpm run format:check
# Run type checking
pnpm run type-check
# Build project
pnpm run build

Automatic Formatting:

  • VSCode: Install Prettier extension for real-time formatting on save
  • Git Hooks: Husky automatically formats code on commit
  • Supported Files: TypeScript, React, JSON, Markdown, CSS, YAML

📂 Project Structure

PathPurpose
app/Next.js routes & pages
components/Shared & domain UI components
lib/Data, services, hooks, state
docs/Architecture, DB schema & API-key design
supabase/SQL migrations & RLS policies

🤝 Getting Help / Contributing

AgentifUI is dual-licensed. The Community Edition is open source under Apache 2.0; the Enterprise Edition adds multi-tenant, SAML/LDAP, branding removal and SLA support under a commercial license. See LICENSE, NOTICE and TRADEMARK_POLICY.md for details.

Releases

Packages

Contributors

Languages