BasisCore basiscore Reference
GitHub
semantic web engine · trusted since 2006

Build the semantic web with one declarative language

BasisCore is a server-side web language that turns plain <basis core> tags into data-driven pages. No boilerplate, secure, and fast — the same routine you already have in your database, rendered straight onto the page.

1000+ production sites building since 2006 open source & self-hostable
install in one line
$ {{ currentCmd }}
books.html
<basis core="print" datamembername="book.list">
 <face filter="count>0">
 <div> @BookName@price </div>
 </face>
 <face>
 <div> Out of stock </div>
 </face>
</basis>
Runs on Apache nginx IIS LiteSpeed Docker · 16 languages supported
// why basiscore

Built for teams that want to own their stack

One declarative language across every layer, an AI assistant that writes it with you, and an open ecosystem you actually control.

One language, database to edge

Server, client, edge, panel, schema and CDN all speak the same <basis core> grammar. Learn it once, use it everywhere.

AI-assisted, end to end

Describe what you need and get working BasisCore code, generated right inside the documentation — from a simple list to a full grid.

You own everything

Open source, your data, your servers, your region. The ecosystem creates gravity — never lock-in.

// build with ai

From a prompt to production code

Describe a grid, a form, or an endpoint — the AI assistant built into the docs returns working BasisCore code you can copy and ship. It reads the page you're on for context.

Try the AI builders
// the academy

A reference you can trust

client60+ chapters & subsystems
edge200+ pages across 29 sections
basispanela marketplace of components
Open the Academy
1000+
Live websites & apps
2006
Founded · two decades in
16
Supported languages
7
Coordinated modules
// syntax

As simple as a tag

Every block starts with a <basis> tag and builds its output from data. Use <face> for conditions, <layout> for templating, and @ to access fields.

  • Declarative, not imperative. You describe the page structure, not step-by-step execution.
  • Straight to the data. The same stored routine or stored procedure, with no extra layer.
  • Secure and unified. A clear boundary between web and database, with simple security rules.
layout.html
<basis core="print" datamembername="book.list">
 <layout>
 <h3> Book list </h3>
 @child
 </layout>
 <face filter="price>15000">
 <div> @BookName@price </div>
 </face>
 <else-layout> No records found </else-layout>
</basis>
// philosophy

More than a product — a way of thinking about the web

Before BasisCore is a product, it is a grammar: declarative, open, and deliberately distributed. Read why that choice shapes everything — from where computation happens to where the trust boundary lives.

Read the philosophy
Own the grammar, not the product

A small, shared language creates network effects — while the open source keeps the exit door in your pocket.

Simplicity returns responsibility

The client filter is for UX, not access control. Transparency forces real security where it belongs — the server.

Gravity, not lock-in

Open source turns lock-in into gravity: you can always leave — it just costs in proportion to how deep you went.

// ecosystem

Seven products, one business identity

On their own these tools look unrelated. Together they let a business own its data, its panel, its language, and its location — end to end.

edge

Bring your own CRM, ERP and accounting data into BasisCore — on your own infrastructure.

schema

Turn structured data into semantic, vector-ready inputs for any AI tool.

basispanel ai

One integrated panel to host any back-office tool and connect to the rest.

network

No language lock, and a regional .net network — you pick the location.

Explore the ecosystem Browse the Academy
// about

About BasisCore

BasisCore was founded in 2006 and is developed and maintained by Manzoomeh Negaran. The goal has been clear from the start: building data-driven web pages in the simplest way possible.

“BasisCore is a system independent of existing languages and stacks — a simple way to build pages that are generated directly from data.”
BasisCore
Manzoomeh Negaran
Maintainers of BasisCore

Ready to start?

One line to install, a few simple tags, and your data-driven page is live. Reach out to get your project running.