- How the kickstarter and the console use packages How the kickstarter (kickstart.ini [site_types] Site_package) and the console install (exp:install --package) choose, fetch and install a site package, how they differ from the web wizard, how dry runs check packages…
- Migrations: deploy step by step Setup > Migrations > Deploys step by step with screenshots. Choose remotes or groups, choose Send and run, Transfer only or Staged, check with Preflight only, deploy, follow every remote live, read the report, approve…
- A tour of the source tree Every top-level directory and entry point of an Exponential checkout from a PHP developer's point of view - where the kernel, the libraries, the commands, the settings, the tests and the generated files live, and which…
- Choosing the next version number Look up what is already published before you pick a version - fetch the tags, sort them as versions, compare with GitHub releases and Packagist - so you never reuse a number, with the commands and the sorting trap.
- Concept dictionary: framework terms in Exponential A lookup table from the words of Symfony, Laravel, Django, Rails, Express and Spring to the Exponential term, the class or setting that implements it, and the page that explains it - including the concepts that have no…
- Contributing as a community member The landing page of the contributing part of the community section - every way a community member can contribute to Exponential, what each needs, the copyright assignment (CLA) for kernel code, how review works, and…
- Exponential Intelligence for AI users The part of the AI, agents and agentic section about Exponential Intelligence (expai), the writing assistant of the administration interface - what it does, which providers it supports, how drafts and review work…
- ezinfo.php: who made it and which version The ezinfo.php metadata file - class name, the static info() method, the keys the administration reads, how it is read after extension.xml, the PHP 8 bare-key trap with a real fix, and how to check it.
- eZINI: reading settings The eZINI methods an extension uses - instance(), variable(), hasVariable(), variableArray(), group(), hasSection() - with their signatures, what they return when a setting is missing, and the template operator ezini().
- History of the template language How the template language grew, told only from what the repository records - the git history from 2002, the changelogs from 2.9, the compiler of 2003, the def/if/foreach syntax of 2005 (version 3.6) that replaced let…
- Imports and runs in 7x SQLI Import What an import and a run are in 7x SQLI Import 2.0, the dashboard, Run now and Dry run, the live run page, cancel, retry of failed rows, undo within 30 days, the results as CSV, notifications and the bell, and the…
- Integration surfaces at a glance Every integration surface that Exponential 6.0.15 and its required extensions provide, with direction, protocol, authentication, where it lives and whether it is on by default, plus what is not provided and how to check…
- Licensing questions: the GPL and Exponential The licensing FAQ of exponential.earth in plain words - the GPL version 2 or later, compatible and incompatible code, assets and dependencies, who holds the copyright, what source code means for a web application…
- Migration commands Every exp:migration command in one table - what it does, when to use it, its most used options and a link to its generated reference page - with the options all of them share, the exit codes, the machine output and the…
- Packages of the Exponential ecosystem The landing page of the packages part of the ecosystem section - the extensions bundled with the kernel, Composer and Packagist, how packages are versioned, site packages and the package server, themes and designs…
- Part 2: The builder: settings, templates and overrides The second part of the book. Change how Exponential behaves and looks without PHP - settings and their scopes, templates, the design chain, overrides, view modes, fetch, classes, roles, workflows and cronjobs.
- Settings scopes and the order they win in The places a settings file can live - default, extension, siteaccess, the per-site folders inside extensions, and the global override - the exact order they are read in, and how to choose the right one for a change.
- The anatomy of a design extension Every folder and file of a theme extension - templates, override templates, stylesheets, scripts, images, the settings that register it and its override rules - shown on the public sevenx_themes_simple theme.
- The audit trail of migration runs Where a migration run leaves its traces - the tables exp_migration and exp_migration_run, the status file and the run log in git, var/log/migration.log and the audit events system.migration.* - and how to answer "what…
- The ladder: user, builder, extension developer, theme developer Four steps from using Exponential to extending it - user, builder, extension developer, theme developer - what each one does, what each needs to know, and which part of this book teaches it.
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