Isha Labs Support

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

  1. Open Admin → Configuration → Modules.
  2. Under Available add-ons, click Install next to the add-on.
  3. For a paid add-on, paste its purchase code. Enter your password and confirm.
  4. 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:

  1. Admin → Plans → Edit plan → Modules included: tick the add-ons this plan includes.
  2. 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.