The Mind Behind Smart Systems
🧬 ElpoCore Platform v1

Talk to AI.
Build Your App.

ElpoCore is the core platform of the ELPO ecosystem. Even non-coders can build applications by talking to AI. AI translates natural-language requests into metadata JSON; the Metadata Engine then automatically generates PostgreSQL tables, REST APIs and React forms from that JSON.

SmartERP, e-Document Integrator and 12 industry packs all live on ElpoCore. Customers can also build their own custom apps with AI in minutes, no code required. Cortex sits alongside the platform as the licensing / identity / usage management upper layer.

3
Deployment models
(On-Prem · SaaS · PaaS)
7
AI providers
behind one gateway
0
Lines of code to write
to build an app
🧬
ElpoCore AI Assistant
● Online · 7 AI providers
I want a customer tracking system with phone, name and last contact date
✨ Got it. Building the structure below:

Customer entity (4 fields)
name, phone, lastContactDate, notes
REST API: /api/customers (CRUD)
React form + list page
PostgreSQL table + indexes

Ready — you can start using it in 5 seconds.
💡 Suggestion: Shall I add a "category" field for customer segmentation? (VIP, Standard, Inactive)
🏗️ Platform Core

The 8 Building Blocks of ElpoCore

From the AI Chat Layer to the Metadata Engine, Plugin Host to Script Runtime — each component is powerful on its own, incredible when combined.

💬 01

AI Chat Layer

User writes in natural language: "I want a customer tracking system with phone, name, last contact date". AI produces metadata JSON; the Metadata Engine generates the table, REST endpoint and form automatically from that JSON. AI never writes code directly — it only produces metadata, the platform interprets it.

🧬 02

Metadata Engine

5 metadata types (entity, field, validation, ui, rule). Single source, multiple outputs: PostgreSQL schema + REST API + React UI all generated automatically from the same metadata. Hybrid storage: real tables for built-in core entities, JSONB + GIN index for dynamic entities.

🎨 03

Generic UI Renderer

Automatic UI from metadata: form, list, detail, dashboard all rendered automatically. Web (React 19), Desktop (Tauri), Mobile (Flutter) — each pulls the same metadata and renders its own UI. One backend, many clients.

⚙️ 04

Workflow & Rule Engine

JSON Rule DSL — visual rule builder. BPMN-based workflow (elpobpm sidecar), state machine, approval chain, scheduled jobs. Business rules are stored as metadata and executed at runtime.

🏢 05

Multi-Tenant + RLS

Each organization = 1 tenant = 1 DB or 1 schema. Full data isolation with PostgreSQL Row Level Security (RLS). Tenant resolver by company code (no subdomain needed). Master DB tenant records + provisioning.

🔌 06

Plugin Host

Microkernel architecture. Run third-party plugins in a sandbox. App-store style `.elpoapp` package format defined. Marketplace infrastructure (publisher + listing tables) ready, third-party publishing flow on the roadmap.

📜 07

Script Runtime (Roslyn)

Sandboxed C# scripting via Microsoft.CodeAnalysis.CSharp.Scripting. Custom business logic, computed fields and event handlers are written at runtime and run without compilation.

📦 08

App Packaging (.elpoapp)

Each application is packaged in an .elpoapp file: metadata + script + UI theme + permissions + documentation. Marketplace distribution, versioning, automatic updates.

⏱️ An App in 45 Seconds

Talk · Let AI Suggest · Generate · Use

Application development that takes weeks on traditional platforms drops to minutes on ElpoCore. No code is written — metadata is written, and the platform interprets it.

01
⏱ 30 sec

Talk

Write or say what you want in natural language. "I want a customer tracking system with phone, name and last contact date."

02
⏱ 5 sec

Let AI Suggest

AI generates metadata JSON: entity, fields, validations, relations, UI. It shows it to you for approval. "Should I also add a Customer category?"

03
⏱ 10 sec

Auto-Generate

The Metadata Engine automatically generates the PostgreSQL table, REST endpoints, React form and list page. Migration runs.

04
⏱ Instantly

Use It

Open the page and start entering data. If needs change, just talk again — add fields, change rules. Without writing any code.

📦 Apps That Live on Top

One Platform, Unlimited Apps

SmartERP, e-Document Integrator and the industry packs all live on ElpoCore. Whenever they need to, customers can also create their own custom apps on the same platform by talking to AI or using the In-Form Designer.

★ Flagship
SmartERP

SmartERP

Accounting, inventory, sales, purchasing, production, HR — built-in ERP modules (manifest-driven app v2.0)

See details
e-Document Integrator

e-Document Integrator

GİB e-invoice, e-archive, e-waybill, e-ledger, e-ticket, e-SMM, e-MM — UBL-TR XML generation and submission

See details

Industry Packs (12)

Apparel, Pharmacy, Restaurant, Footwear, Automotive, Construction, Cosmetics, Education, F&B, Furniture, Healthcare, Logistics — each with entities + form templates + AI assistant + cross-module wire

Country Packs (3)

TR (Uniform Chart / GİB), US (GAAP), DE (HGB · SKR03/04) — local regulatory packs

Custom Apps

Customers build their own custom apps in minutes by talking to AI or using the In-Form Designer — without writing code

🧠 AI Capabilities

AI does.
Humans supervise.

The AI Chat Layer of ElpoCore uses 7 different AI providers (Claude, GPT, Gemini, Groq, DeepSeek, Qwen, OpenRouter). Every ELPO product makes calls through the shared ElpoAIapi gateway — model switching happens in one place, prompt updates come from the database.

01

Natural-language app creation ("customer tracking, phone, name, last contact..." → done)

02

Analyzing existing metadata and suggesting customizations

03

Converting business rules to JSON Rule DSL

04

Detecting user mistakes and suggesting corrections

05

7 AI providers through the ElpoAIapi gateway (Claude, GPT, Gemini, Groq, DeepSeek, Qwen, OpenRouter)

06

Free fallback chain: groq → qwen → gemini → openrouter → deepseek → anthropic

07

BYOK (Bring Your Own Key) — customers can use their own LLM keys

08

Cost tracking, rate limiting, usage metrics (agent marketplace on the roadmap)

🚀 3 Deployment Models

Same Engine, Three Channels

Do you want on-premise, SaaS, or to build your own product? ElpoCore is delivered from the same code base in three different models.

01

On-Premise

Target

Large enterprises, government agencies, data-sensitive industries

Revenue Model

One-time license + annual renewal + support package

The customer unzips ElpoCore-v1.0.zip on their own server and runs setup.bat. PostgreSQL on their own server. Licensing tied to Cortex, paid annually. Data stays entirely with the customer. AI: own key or ElpoAIapi.

  • Maximum data privacy
  • Single tenant, JWT login, setup wizard
  • Annual license renewal + support package
★ Popular
02

SaaS

Target

SMBs, startups, sole traders — anyone without their own server

Revenue Model

Monthly subscription + AI usage fee + storage

Runs on our servers. Login via a single domain using company code — each company isolated in its own DB. AI: through ElpoAIapi (pay per use). We handle updates, backups and monitoring.

  • Company code → tenant resolver (no subdomain needed)
  • Automatic backups + monitoring + updates
  • Monthly subscription, tiered plans (free/pro/enterprise)
03

PaaS — Platform as API

Target

Software companies, agencies, partners

Revenue Model

Usage billed per API call / entity / user

api.elpocore.com — REST API endpoints. Define entities with POST /v1/entities, insert records with POST /v1/entities/*/records, generate metadata from natural language with POST /v1/ai/generate. A software company sells "Kodlax CRM" with ElpoCore running underneath.

  • API key + X-Tenant header
  • Rate limiting, billing, usage metrics
  • Unlimited scale (partner customers)
🏭 12 Industry Packs

Ready for Your Industry

From textiles to pharmacies, restaurants to automotive — 12 industry packs ship with industry-specific entities, form templates, AI assistants and cross-module flows. One-click install, idempotent.

👕

Apparel

apparel
🚗

Automotive

automotive
🏗️

Construction

construction
💄

Cosmetics

cosmetics
🎓

Education

education
🥫

Food & Beverage

foodbeverage
👟

Footwear

footwear
🛋️

Furniture

furniture
🏥

Healthcare

healthcare
🚚

Logistics

logistics
💊

Pharmacy

pharmacy
🍽️

Restaurant

restaurant

Each pack: catalogs/ · documents/ · registers/ · rules/ · form-templates/ · ai-agent-defaults/

📡 One Backend, Four Clients

Same App on Every Device

Because ElpoCore is API-first + metadata-driven, whichever client pulls the metadata builds its own UI. The backend stays the same — Web, PWA, Desktop and Mobile bind to the same entities.

🌐

Web

React 19 + TypeScript

Runs in the browser. The main UI. Mature, broad ecosystem.

  • Available now
  • elpo-core-ui project
  • Single React codebase
📲

PWA

React + Service Worker + Manifest

Add 3 files to the web app = installable phone app. Works offline and sends push notifications.

  • No app store needed
  • Free — same codebase
  • Offline + push
🖥️

Desktop

Tauri (Rust + WebView)

Wraps your existing React app. Produces a 5-10MB .exe / .dmg (vs. 200MB Electron). Native menu, tray, OS integration.

  • Windows · macOS · Linux
  • 5-10MB binary
  • Low RAM usage
📱

Mobil

Flutter (Dart)

Skia render engine — consistent UI on every device. Native camera, GPS, NFC, notifications.

  • Android + iOS
  • Native performance
  • elpo-platform-mobile
GET /api/platform/Customer  ──→  metadata JSON

React Renderer (web/PWA/Tauri):     Flutter Renderer (mobile):
  FieldType.String  → <input>         FieldType.String  → TextField
  FieldType.Boolean → <checkbox>      FieldType.Boolean → Switch
  FieldType.Date    → <DatePicker>    FieldType.Date    → DatePicker
  FieldType.Lookup  → <SearchSelect>  FieldType.Lookup  → SearchableDropdown
⚡ Live Capabilities

What Traditional Low-Code Cannot Do

ElpoCore gives every application 10 platform capabilities out of the box that low-code competitors don't offer. Form design, cross-module wiring, time-travel, 360° view — all at the metadata level.

⚙️

In-Form Designer

3 layers: Platform / Tenant / User

A ⚙️ Design button on every form. Users add new fields in 5 seconds. Even when the upper layer is updated, the lower overrides are preserved — upgrade-safe customization.

🔗

Cross-Module Wire

8 types × 8 triggers

Cross-module wiring rules: AutoFill, LookupChain, Derived, Event, Cascade. Visual canvas studio (SVG bezier graph) + table view. AsyncLocal cycle detection 10-hop.

🧠

Entity Deepening

AI suggestion

The entity-deepener / variant-matrix-builder / industry-pack-generator agents analyze usage patterns and suggest missing fields, variants or industry packs.

📈

Auto-Recommend

24h cron

SectorAutoRecommendBackgroundService watches user behavior and recommends additional industry packs via dashboard banners (e.g. F&B installed, Restaurant suggested).

🕒

Entity Versioning

time-travel API

Every change is snapshotted in the entity_versions table. Fetch a past version via /api/admin/entity-version/X/Y/at?asOf=... Compliance + audit + rollback.

🎯

360° View

Customer · Product · Supplier · Employee

All movements, relations and AI summaries for a single record on one screen. Metadata-driven aggregation instead of complex JOINs.

🧭

DrillDown Navigator

20-hop history

Back/forward buttons across entity → entity → entity navigation (sessionStorage). Users don't get lost in an order → customer → invoice → payment journey.

🚀

Tenant Onboarding Saga

6 steps

New company onboarding: SchemaProvisioning → Seeding → InstallingApps → CreatingFirstAdmin → ready to use. /onboarding wizard for the user interface.

🔐

Cortex Licensing

HMAC-SHA256

License heartbeat (5-min ping), expired/suspended/readonly/expiring banners, useLicenseStatus hook, On-Premise license.lic HMAC validator, reset_token flow.

🧮

Computed + Document Numbering

Roslyn · race-safe

Computed Fields: expression-based calculated fields (Roslyn sandbox). Document Numbering: prefix / padding / yearly-monthly reset, multi-tenant isolated numbering rules.

🗄️ Hybrid Data Architecture

Performance + Flexibility Together

Built-in core entities live in real tables (maximum performance), while dynamic entities created with AI live in JSONB (full flexibility). Best of both worlds.

🏛️

Core Entities

Built-in core entities (tenants, users, accounts, invoices, products, contacts) are stored in real tables. Maximum performance, rich indexes, complex JOINs.

Examples
  • tenants, users, roles
  • accounting_accounts, journal_entries
  • invoices, invoice_lines
  • products, inventory, contacts
🌊

Dynamic Entities

Custom entities defined via AI or the Configurator UI are stored as JSONB in a single dynamic_records table. Performant thanks to GIN index + partial indexes + materialized views.

Examples
  • dynamic_records (id, entity_def_id, tenant_id, data JSONB)
  • GIN index on data
  • Partial indexes for common queries
  • Materialized views for reporting

Technology Stack

Modern, scalable, open-source ecosystem

Backend
ASP.NET Core 10 (.NET 10 LTS)
Frontend
React 19 + TypeScript 5
Database
PostgreSQL 16 + JSONB + pgvector
ORM
EF Core 9 (DB-agnostic)
Cache
Redis
Background Jobs
Hangfire
Event Bus
MassTransit + RabbitMQ
Scripting
Roslyn (C# Sandboxed)
AI Gateway
ElpoAIapi (14)
Telemetry
OpenTelemetry
Auth
JWT + BCrypt
Mobile
Flutter (Android + iOS)
🏷️ White-Label · PaaS Partner

Use ElpoCore as Your Engine

For software companies, agencies and partners — PaaS model. Sell the metadata-driven engine under your own brand via REST API + X-Tenant header. Your customers see yourerp.com and never know ElpoCore is behind it. The ERP/CRM that would take 6 months to write is ready in 1 week.

01 · API
Engine as a Service

POST /v1/entities · API key + tenant isolation

02 · UI
Your Own Frontend

Theme system · React renderer · iframe or wrap with your own UI

03 · Scale
Unlimited Tenants

Usage-based billing · the partner's customers count toward you

PaaS Partner Program

Try the Platform That Talks to AI

ElpoCore is the core platform on which all ELPO applications live. Your customers can build their own apps too — just by talking to AI.

Message on WhatsApp