xaraya / core
Xaraya Core web development framework
Installs: 12
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 5
Type:project
pkg:composer/xaraya/core
Requires
- php: >=8.2
- ext-mbstring: *
- ext-xml: *
- ext-xsl: *
Requires (Dev)
- middlewares/utils: ^4.0
- nikic/fast-route: 2.0.0-beta1
- nyholm/psr7: ^1.8
- nyholm/psr7-server: ^1.1
- phpdocumentor/reflection: ^6.4
- symfony/config: ^7.4 || ^8.0
- symfony/routing: ^7.4 || ^8.0
- webonyx/graphql-php: ^15.26
- xaraya/modules: dev-master
- xaraya/properties: dev-master
- xaraya/twig: ^2.8
Suggests
- ext-mysqli: Access database via Creole library (legacy)
- ext-pdo_mysql: Access database via PDO driver (modern)
- doctrine/cache: Use supported Doctrine CacheProviders for caching
- doctrine/dbal: Experiment with external database (Doctrine DBAL)
- mongodb/mongodb: Experiment with external database (MongoDB)
- phpdocumentor/reflection: Required to use bermuda_cleanup.php in developer/tools
- phpstan/phpstan: PHP Static Analysis Tool - discover bugs in your code without running it
- phpunit/phpunit: The PHP Unit Testing framework
- xaraya/modules: Experiment with adding modules via composer cli
- xaraya/properties: Experiment with adding properties via composer cli
- xaraya/twig: Use Twig template engine with Xaraya
This package is auto-updated.
Last update: 2025-12-15 22:28:42 UTC
README
This provides the Xaraya core framework with the essential modules, blocks, properties and themes.
Optional xaraya/modules and xaraya/properties bundles will be installed in development mode.
Requirements
- PHP 8.2+ with mbstring, XML and XSL extensions
- MariaDB 10.x or MySQL 8.x (or SQLite 3.x in tests)
- composer 2.x for installation
Installation
Create Xaraya core project using composer in current directory or "myproject" subdirectory (composer create-project)
composer create-project xaraya/core [myproject]
Xaraya Modules
Add other Xaraya Modules as composer packages to your project (composer require)
composer require xaraya/library
Legacy Support
Older 2.x modules can be supported under the following conditions:
- Removed: no use of legacy 1.x core functions, e.g.
xarUserGetVartoxarUser::getVar(2.4.5) - Renamed: replace static method calls for
DataObjectMaster::get*withDataObjectFactory::get*(2.7.3) - Autoload: remove/rename conflicting classes, e.g. left-over copies of
class/hooksubjects/*(2.8.0)
After copying the module files to the html/code/modules/[mymodule]/ directory, be sure to run dump-autoload again:
composer dump-autoload -o
You can use developer tools bermuda_cleanup.php to clean up 2.x module code and templates.
Older 1.x modules can be converted using aruba2jamaica-2.1.php first.
Some "minor" clean-up will be needed afterwards :-)