Add-on Modules
Updated Oct 18, 2026
Add-on modules add new features to Quizora without changing its code, for example the free Gradebook. Manage them at Admin → Configuration → Modules (/admin/modules).
| On the Modules page | What it shows |
|---|---|
| Installed | Every module, its version and status: Active, Off, Needs attention or Unsigned (developer mode). |
| Available add-ons | Official add-ons you haven't installed yet. Free ones install in one click; paid ones ask for their purchase code. |
| How modules work | A short in-page guide (click to expand). |
Every change asks for your password. In demo mode nothing can be installed, changed or removed.
License required: Add-ons need an activated license. See License & Updates.
Installing an add-on
- Open Admin → Configuration → Modules.
- Under Available add-ons, click Install next to the add-on.
- For a paid add-on, paste its purchase code. Enter your password and confirm.
- A progress bar shows each step (download, signature check, files, database). Keep the page open; it takes a few seconds.
The add-on is switched on as soon as it's installed. Its pages appear in the creator panel for the creators who may use it (see Selling add-ons to creators).
New versions of installed add-ons show an Update to x.y.z button on their row. Use More → Check for updates to check right away (Quizora also checks once a day).
Uploading a module
Upload module installs a module from a file instead of the store:
| File | Result |
|---|---|
A signed package (….licentra-module.zip) |
Installed exactly like a store install: same signature check, and paid add-ons still need their purchase code. |
A plain module .zip (your own, unsigned) |
Accepted only in developer mode (LICENTRA_MODULES_DEV=true). It goes into modules-dev/ and is marked Unsigned. |
Any other file is refused with an explanation.
Developer mode: Developer mode loads code that hasn't been checked. Use it on a development copy, not your live site.
Selling add-ons to creators
Most add-ons can be included per subscription plan, so you can offer them on your higher plans:
- Admin → Plans → Edit plan → Modules included: tick the add-ons this plan includes.
- For one creator, Admin → Users → Edit → Extra modules grants an add-on their plan doesn't include.
Creators without the add-on don't see its pages in the creator panel, and its public pages show "Your plan does not include this feature". Add-ons that aren't sold per plan (marked so by their author) are available to every creator. The super admin always has access.
Managing modules
| Action | What happens |
|---|---|
| Switch off | The module stops loading. Its pages disappear; its data is kept. |
| Switch on | Loads it again. Also brings back a module that was switched off after errors (fix the cause first). |
| Retry database update | Shown when an install's database step failed ("Needs attention"). Runs the module's migrations again. |
| Update to x.y.z | Installs the newer version. Older versions can never replace a newer one. |
| Uninstall (trash icon) | Removes the module's files. Its data is kept, so installing it again picks up where you left off. To delete the data too, type the module's name in the dialog. |
Every action is recorded in storage/logs/licentra-modules.log (who, what, when).
From the command line:
php artisan module:list
php artisan module:install quizora-example
php artisan module:enable quizora-example
php artisan module:disable quizora-example
php artisan module:uninstall quizora-example # --delete-data to drop its tables
How Quizora stays safe
-
Only signed modules install. Store downloads and uploaded packages are checked against the author's digital signature; a module folder copied onto the server is never loaded.
-
A broken module only breaks itself. Quizora switches a module off, and shows why on the Modules page, when it:
- throws an error while starting,
- causes 3 crashes within 10 minutes,
- causes 3 errors on Quizora's own pages, or
- causes 10 errors within 10 minutes on its own pages or background tasks.
Exams, payments and all other pages keep working.
-
Exams always save. When a module reacts to a new attempt and fails, the attempt is still saved.
-
Modules can't replace Quizora's pages. Each module lives under its own address (e.g.
/quizora-example/...). -
Updates and installs never overlap. A Quizora update never touches modules or their data, and a module that doesn't support the new Quizora version is switched off instead of breaking the site.
-
Before installing, each module lists what it adds (tables, outside services it contacts, scheduled tasks) on its row.
Emergency: safe mode
If the site misbehaves after installing a module and you can't reach the admin panel, add this to .env:
LICENTRA_MODULES_SAFE=true
then run php artisan config:clear. No modules load until you remove the line again. Or switch them all off:
php artisan module:disable --all
Troubleshooting
| Message | What to do |
|---|---|
| Couldn't reach the add-on store | Your server can't reach licentra.pacificsoftwares.com over HTTPS. Installed modules keep working. |
| Activate your license to browse add-ons | Activate Quizora first: License & Updates. |
| The module failed its signature check | The file was changed or isn't from the author. Download it again. |
| Needs Quizora x.y | Update Quizora first, then install the module. |
| Another update or module install is running | Wait for it to finish, then try again. |
| A module shows Not running | Its reason is shown under its name (license, incompatible version or errors). |
| The module license was refunded or cancelled | The add-on stops after 7 days; its data is kept. |
Want to build your own? See Module Development.