- Develop with Git: grow from user to developer The recommended way to build websites with Exponential. Install the kernel and every se7enxweb extension as Git clones with their full history, turn an existing site into clones, keep them up to date, and send your…
- Contribute extensions back: share your work with everyone Why and how to give the extensions you build back to the Exponential project so everyone can use them; what the GNU GPL really requires when you distribute an extension (and what it does not require for a site you only…
- Application creators: start here The landing page for application creators - what Exponential gives an application, a first-week plan, and every page of this section grouped by task, from the first extension to APIs, AI, queues, testing, deployment…
- Database support Which databases Exponential 6.0.x supports and in which order (SQLite first, then PostgreSQL, MongoDB, MariaDB, Oracle and MySQL), with the versions, PHP extensions, settings, installers, character sets, performance…
- Distributing a theme: start here The map for publishing a theme - GitHub repository, version numbers and permanent tags, releases and changelogs, Packagist, licensing choices, screenshots and demo sites, and the community sites share.exponential.earth…
- Exponential: frequently asked questions The answers of the FAQ on exponential.earth, retold and checked against the software - what Exponential is and how it relates to eZ Publish, why choose it, modules, designs and distributions, changing core files, code…
- Templates overview A map of Exponential's template language (TPL) for designers: what templates are, the kinds of templates a design has, the building blocks of the language (variables, functions, operators, fetches), how templates find…
- The maintenance life cycle: start here The map for keeping a theme alive after its first release - following Exponential releases, upgrade testing, per-release accessibility, CSP and performance audits, security fixes, deprecation, end of life, handover…
- Theme extensions: start here The map of everything about packing a design into a theme extension - folder structure, ezinfo.php and extension.xml, the settings a theme ships, the RAD design wizard, Composer packages and Exponential packages…
- Two ways to build Exponential 6.0.15+ builds pages two ways - template code in a design extension, and the Layouts editor with no code - and the two meet in blocks and template blocks. What each way is, who uses it, when to choose which…
- Operating system support Exponential 6.0.x runs on almost any operating system with PHP 8.0 or later (PHP 7.4 usable without support) and a web server. This page sorts them honestly into tiers (tested here, known to work, expected to work, not…
- Testing migrations: check, simulate, diff and CI Four layers of tests for migrations - the lint without a database, the dry run, the simulation with a diff on PostgreSQL or SQLite, and a PHPUnit test on a throwaway SQLite database - and how to run them in CI.
- Team workflow with git: branches, conflicts and order How several developers write migrations on branches without stepping on each other - timestamps and order, requires for real dependencies, two migrations with the same timestamp, rebasing, renaming only before a merge…
- Deploying with migrations: CI/CD and GitHub Actions Run migrations as part of every deploy - the order of the steps, a complete GitHub Actions workflow that checks pull requests and deploys over SSH, the exit codes a pipeline acts on, the installation lock, and runs…
- Captions and rollback in practice Walk through the ways back after a migration run - the automatic restore after a failure, rolling back a whole run, one migration with its down(), an earlier caption for experts - with the commands, their output and…
- Getting support: free help and paid help Every way to get help with Exponential, following the support page of exponential.earth - first the documentation, eZpedia and the articles on Share Exponential, then the forums and the Telegram, Discord and Slack…
- The application creator's reading path The pages of the application creators' section in the order an application is built - six stages from the first extension to a scaled production system - with what you should be able to do after each stage.
- TPL syntax basics The rules of the template language in one page: tags in braces, variables with $, values (strings, numbers, arrays, hashes, booleans), operators with pipe or call syntax, functions with parameters, comments, whitespace…
- Upgrade step or migration? When a change belongs in an upgrade step that exp:upgrade applies to every installation of the kernel or an extension, and when in a migration of one site; how the upgrade steps appear among the migrations, and how a…
- Coming from Doctrine Migrations For developers who know Doctrine Migrations from Symfony projects - every Doctrine command and class mapped to its Exponential 6 counterpart, what Exponential adds (captions, commit, tag and push, environments…
Documentation license
This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.
Exponential Copyright © 1998-2026 Exponential Foundation and 7x