joomlatools/joomla-platform

This package is abandoned and no longer maintained. The author suggests using the joomlatools/platform package instead.

Joomla based web platform for building modern, scalable and maintainable software-as-a-service apps


README

Alt text for your video

Would you be willing to trade all the days from this day forward for one chance -- just one chance -- to come back here and tell our enemies that they may take our lives, but they'll never take our freedom?

Alba gu bràth!

Joomlatools Platform is a modern Joomla stack that helps you get started with the best development tools and project structure.

Much of the philosophy behind the platform is inspired by the Twelve-Factor App methodology including the Joomla specific version.

Forked from Joomla CMS v3.6.5

Features

  • Better directory structure
  • Slimmed down codebase
  • Additional flexibility improvements and bug fixes
  • Dependency management with Composer
  • Easy Joomla configuration with environment specific files
  • Environment variables with Dotenv
  • CLI extension installer with Joomlatools Composer

Use the Joomlatools Vagrant box for additional features:

  • Easy development environments with Vagrant
  • Easy server provisioning with Puppet (Ubuntu 14.04, PHP 5.5, MariaDB)
  • One-command deploys using Capistrano

Requirements

  • PHP >= 7
  • Composer - Install
  • Mbstring PHP Extension

Installation

Automatic (recommended)

  1. Run composer create-project joomlatools/platform
  2. Complete the steps
  3. Access Joomla administrator at http://example.com/web/administrator

Manual

  1. Clone the git repo - git clone https://github.com/joomlatools/joomlatools-platform.git
  2. Run composer install
  3. Create a new database and import the MySQL data in the following order:
    • install/mysql/schema.sql
    • install/mysql/data.sql
    • install/mysql/legacy.sql
  4. Copy .env.example to .env and update environment variables:
    • JOOMLA_DB_NAME - Database name
    • JOOMLA_DB_USER - Database user
    • JOOMLA_DB_PASS - Database password
    • JOOMLA_DB_HOST - Database host
    • JOOMLA_ENV - Set to environment (development, staging, production)
    • JOOMLA_KEY - A 32 character random string
    • JOOMLA_CACHE - [OPTIONAL] True or false to enable or disable caching
    • JOOMLA_DEBUG - [OPTIONAL] True or false to enable or disable debug mode
  5. Access Joomla administrator at http://example.com/web/administrator and login with both username and password admin.

Joomlatools Console

Our Joomlatools Console also supports the Joomlatools Platform. To install the platform with a single command, add the --repo=platform flag:

joomla site:create joomlatools-platform --repo=platform

Configuration

To be able to access your Joomla site at http://example.com/set your site vhost document root to /path/to/site/web/.

If you are using shared hosting and/or you are not allowed to change your server Apache vhost configuration directly rename htaccess.txt to .htaccess and modify it use your domain name to set web root or document root to /web.

Deploys

There is currently one method to deploy platform sites out of the box:

Any other deployment method can be used as well with one requirement:

composer install must be run as part of the deploy process.

Documentation

Contributing

Joomlatools Platform is an open source, community-driven project. Contributions are welcome from everyone. We have contributing guidelines to help you get started.

Contributors

See the list of contributors.

License

Joomlatools Platform is free and open-source software licensed under the GPLv3 license.

Community

Keep track of development and community news.