Open source CMS

Extensions

Overview

Extensions are simple way to create modular web applications. Each extension can contain Database Model Classes, migrations, route controllers html pages and components, queue jobs classes and events subscribers classes

Package descriptor file arikaim-package.json

{ 
    "version": "{ Version }",
    "name": "{ Extension name }",
    "title": "{ Extension display name }",
    "package-type": "extension",
    "repository": "{ Git Repository Url }",
    "help": "{ Help page url }",
    "description": "{ Description text }",
    "short-description": "{ Short description text }",
    "type": "user",  
    "admin-menu": {        
        "title": "{ Title }",
        "icon": "{ Css icon class }",
        "page-title": "{ Control panel page title }",
        "page-icon": "{ Css icon class }",
        "component": "{ Control panel component name }"
    }      
}
Property Type Description
version string required Package version.
name string required Package name.
title string optional Package display name.
package-type string required Package type.
repository string optional Git repository url.
help string optional Help page url.
description string optional Package description text.
short-description string optional Short description text.
admin-menu/title string required Control panel menu title.
admin-menu/icon string required Control panel menu icon.
admin-menu/page-title string required Control panel page title.
admin-menu/page-title string required Control panel page icon.
admin-menu/component string required Control panel html component name.

Folder structure

Extension folder
config
Extension config files.
console
Extension console command classes.
controllers
Controller classes.
jobs
Queue jobs.
models
ORM model classes
schema
Database migrations
subscribers
Event subscribers.
view
Html components, pages, js and css files
components
Html components root folder
pages
Html pages root folder
css
Css files
js
Javascript files
arikaim-package.json
Package descriptor file.