Step-by-step instructions for installing JoomSchool on a fresh or existing Joomla site, what gets created automatically during installation, how to apply updates safely, and what to check when things don't go as expected.
Overview
JoomSchool is a Joomla extension that you install through the standard Joomla extension installer. There is no separate database setup — all the tables JoomSchool needs are created automatically during installation, and the same is true for the user groups, access levels and default reference data (grading scales, payment methods, custom field types) that the component uses.
The component is compatible with Joomla 4, Joomla 5 and Joomla 6. It is delivered as a single ZIP package which you upload through the Joomla administrator.
System requirements
Confirm the following before installing:
| Requirement | Minimum |
|---|---|
| Joomla CMS | 4.0 or later (4.x, 5.x or 6.x) |
| PHP | 7.4 or later (8.0+ recommended) |
| Database | MySQL 5.7+ or MariaDB 10.4+ |
| PHP memory_limit | 128 MB or higher |
| PHP max_execution_time | 60 seconds or higher |
| PHP upload_max_filesize | 16 MB or higher (some PDF and ZIP imports are large) |
| GD extension | Required for photo resizing |
| ZIP extension | Required for ZIP-based bulk imports |
If your hosting provider sets PHP limits below the recommended values, ask them to raise them, or install on a more capable host.
Pre-install checklist
- Back up your Joomla site, both files and database. Even though JoomSchool has never been known to break an existing Joomla install, an extension install always touches the database — a fresh backup is your safety net.
- Download the latest package from joomboost.com (or the email you received after purchase). The file will be named something like
com_joomschool-3.x.x.zip. - Confirm file permissions — your
tmp/andadministrator/components/directories must be writable by the web server. - Disable any caching plugins you have enabled, just for the duration of the install. Cache plugins occasionally interfere with the install scripts.
Installation steps
- Log into your Joomla administrator.
- Open System → Install → Extensions.
- Choose the Upload Package File tab.
- Click Or browse for file and select the JoomSchool ZIP package.
- Wait for the upload to finish. Joomla shows a green success banner once the install completes.
- Open Components → JoomSchool to confirm the component is available.
If the install fails partway through, see the Troubleshooting section below — partial installs can usually be fixed by raising PHP limits and re-running the installer.
What gets created automatically
The installer is a one-shot operation, but it sets up quite a lot. Here's the complete list so you know what to expect.
Joomla user groups
Three groups are created and assigned IDs starting at 140001:
| Group | Default ID |
|---|---|
| Students | 140001 |
| Teachers | 140002 |
| Parents | 140003 |
These IDs are the values used by JoomSchool to recognise which role a logged-in user has. You can re-map them in Components → JoomSchool → Options → Account if your site already uses those numeric IDs for something else.
Access levels
Three access levels are created so that you can publish frontend menu items, articles and modules to one role at a time:
| Level | Default ID |
|---|---|
| Students | 140004 |
| Teachers | 140005 |
| Parents | 140006 |
Reference data
The installer seeds a working set of defaults so the component is usable immediately:
- Grade scales — a 100-mark scale with grades A+, A, A-, B, C, D, F and corresponding point values.
- Payment methods — Check, Cash and Card.
- Custom field types — Input Box, Text Area, Check Box, Radio Box, Select Box and Datepicker.
- Field sections — student, teacher and parent (these are the contexts where custom fields can be attached).
Everything seeded is editable. If your school uses a different grade scale, payment list or set of custom fields, you'll change them in their respective admin views — the seeds simply spare you a blank-slate setup.
Database tables
All JoomSchool tables share the prefix #__joomschool_ (where #__ is your Joomla database prefix). They cover students, teachers, parents, classes, sections, divisions, subjects, exams, marks, attendance, payments, library, transport, announcements, messages, custom fields and a few more. You don't need to know the schema — just be aware that uninstalling the component will offer to drop these.
First-time admin walkthrough
Once installed, the recommended order of setup is:
- Components → JoomSchool → Options — set the school name, address, contact details, currency and PDF preferences. See the Global Configuration article for a full tour of the options screen.
- Components → JoomSchool → Class (Classes) — create the classes the school offers.
- Components → JoomSchool → Sections / Divisions / Subjects — define the structure under each class.
- Components → JoomSchool → Teachers — add teachers and assign them to classes and subjects.
- Components → JoomSchool → Students — add students and link them to a class, section, division and academic year.
- Components → JoomSchool → Parents — add parents and link each parent to their children.
There is also a Demo Mode option in Components → JoomSchool → Options → Demo that fills the system with sample data for evaluation. Enable it on a non-production site only.
Verifying the installation
Open Components → JoomSchool → Dashboard. You should see:
- A welcome message and the school's name (initially the placeholder "Schools/Collage Name" until you change it in Options).
- Submenu items along the top of the page: Dashboard, Students, Teachers, Parents, Subjects, Class, Sections, Divisions, Attendance, Exams, Marks, Payments, Messages, Accounting, Transports, Libraries.
- Empty list views (no students yet) — this is expected.
If any submenu item is missing, the install was incomplete; re-run the installer or check administrator/components/com_joomschool/joomschool.xml is present.
Updating to a new version
JoomSchool updates are released as new ZIP packages with the same filename pattern. Two methods work:
Method 1: Joomla Update channel (recommended)
If your install was registered with a Download ID, JoomSchool appears in System → Update → Extensions. The updater detects new versions automatically; click Update to apply.
Method 2: Manual ZIP upload
- Back up your site.
- Open System → Install → Extensions → Upload Package File.
- Upload the new ZIP. Joomla recognises the existing JoomSchool install and runs the upgrade script (defined in the manifest's
<update>block). - Wait for the success banner. Open Components → JoomSchool → Dashboard and confirm the version number in the page footer matches the new release.
The upgrade script applies database schema changes from the sql/updates/mysql/ folder. You don't need to run any SQL by hand.
After updating
- Clear the Joomla cache in System → Maintenance → Clear Cache.
- Open every list view at least once (Students, Teachers, Payments…) to confirm nothing throws a 500.
- Check the recent commits / changelog for any features that need explicit configuration after upgrade.
Uninstalling
To remove JoomSchool: System → Manage → Extensions, search for JoomSchool, select the row, click Uninstall.
The uninstall script:
- Drops the
#__joomschool_*database tables — all student, teacher, parent, mark, attendance, payment and library data is permanently deleted. - Removes the component files from
administrator/components/com_joomschool/andcomponents/com_joomschool/.
The uninstall script does not:
- Delete the user groups (Students, Teachers, Parents) it created on install. These remain so that a future re-install can pick up where you left off.
- Delete the access levels.
- Delete any Joomla user accounts that were created via JoomSchool.
If you want to preserve the data before uninstalling, export everything first via Components → JoomSchool → Backup (CSV exports of every table). That backup will let you re-create the data after a fresh install.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| The installer reports "Allowed memory size exhausted" or a timeout. | PHP memory_limit or max_execution_time is too low. |
Raise both in php.ini or via your hosting control panel. Aim for memory_limit=256M and max_execution_time=120. |
| The Upload Package File form rejects the ZIP as too large. | PHP upload_max_filesize or post_max_size is below the package size. |
Raise both to at least 32 MB. |
| Install completes but the JoomSchool component does not appear. | The component was installed under a different name or the menu cache is stale. | Open System → Maintenance → Clear Cache. Check System → Manage → Extensions and search for "joomschool". |
| Submenus are missing from the dashboard. | The manifest install step failed silently. | Re-run the installer with the same ZIP. The upgrader will repair the missing pieces. |
| 500 Internal Server Error after install. | A PHP version mismatch (e.g. site running PHP 7.2). | Upgrade to PHP 7.4+ and clear the cache. |
| Frontend dashboard shows a "Restricted access" message after login. | The student/teacher/parent group IDs in Components → JoomSchool → Options → Account don't match the actual Joomla group IDs (this happens after a database restore that renumbers groups). | Update the group IDs in Options to the new values. |
| Update applies but old features still appear. | Browser is showing a cached page. | Hard-refresh (Ctrl+F5) or clear the browser cache. |