Menu

Home Log in to Edit

LongStone

just-core

An Enterprise Grade PHP framework

See Home for a summary.

[Quick Start Guide]
[Installation]
[Application Structure]

Application Structure




The Layout

the expected install is something along the lines of
/var/www/VHOSTS/hostname/ - your "servable" directory root
/var/www/VHOSTS/hostname/[API*] - your API directories
/var/www/JCORE - your base install directory
/var/www/JCORE/CORE/ - a checkout of the JCORE project
/var/www/JCORE/CACHE/ - a writable cache directory
/var/www/JCORE/CONFIG/ - contains ini files for CORE
/var/www/JCORE/PLUGINS/ - plugin directory

But these can be any directory your application server has r/w access to. The subdirectories under JCORE are mapped as constants in the file JCORE/APIS/[api_name]/config.php

    define ("JCORE_BASE_DIR", "/var/www/JCORE/CORE/");
    define ("JCORE_CONFIG_DIR", "/var/www/JCORE/CONFIG/");
    define ("JCORE_PACKAGES_DIR", "/var/www/JCORE/PACKAGES/");
    define ("JCORE_TEMPLATES_DIR", "/var/www/JCORE/TEMPLATES/");
    define ("JCORE_LOG_DIR", "/var/log/httpd/"); 
    define ("JCORE_PLUGINS_DIR", "/var/www/JCORE/PLUGINS/");
    define ("JCORE_PACKAGES_DIR", "/var/www/JCORE/PACKAGES/");




JCORE/[APIS]

contains example API's (SOA, ReST, basic HTTP) as well as the "default_admin_api"
if you want to expose this you can create a symlink under the http directory.
the API directory itself can contain as little as the index file and the config file.

All of the business logic should be contained in the PLUGINS and PACKAGES.

JCORE/[CONFIG]

JCORE uses *.ini files for almost all configuration settings. basic settings are are in jcore.ini
the settings for CACHE_SOURCE, DATA and LOG are discussed in those subsections
pay particular attention to connections with MySQL when using multiple data sources

JCORE/[CORE]

the foundation. Authentication/Authorization, Cache (opcode and data), Exception, Localization, LIB (3rd party tools), Load (bootstrap and autoload ) , Package utilities, Templater and Transport layer

JCORE/[PLUGINS]

default directory for packages and some example packages

JCORE/[PACKAGES]

default directory for packages and some example packages

JCORE/[TEMPLATES]

example templates for various file types CSS, HTML, Javascript, PHP and XML

JCORE: [PACKAGES] vs [PLUGINS]

Given that JCORE is explicitly SOA plugins are meant to be discrete service objects/sets. Packages can be understood as collections of plugins to create an application or more complex API

Screenshot thumbnail
ReST example
Screenshot thumbnail
SOA example
Screenshot thumbnail
Data Call
Screenshot thumbnail
The "CORE" stack
Screenshot thumbnail
The full stack


Related

Wiki: APIS
Wiki: Application Structure
Wiki: CONFIG
Wiki: CORE
Wiki: Installation
Wiki: PLUGINS
Wiki: Quick Start Guide

Discussion

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.