Scorpio Framework for PHP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src/Scorpio
.gitignore
CHANGELOG.md
LICENSE
README.md
composer.json
phpunit.xml.dist

README.md

README

What is Scorpio Framework?

Scorpio is a component based full-stack framework for PHP 5.3. It utilises the Symfony 2 components and other libraries to provide base functionality while providing some unique features specific to Scorpio.

Scorpio is suitable for medium to large projects and is tailored to projects that require a single site be re-branded (white-labelled) multiple times, while running from the same codebase or for exposing multiple sites from a single entry point e.g. api, admin, client.

Requirements

Scorpio 2 requires PHP 5.3.6+, various Symfony 2 components, Smarty 3.1.8+ and Doctrine 2+ ORM.

Optionally for reporting you may need PHPExcel for XLS/X output.

For email there is an adaptor for both phpMailer and SwiftMail.

Status

Scorpio 2 is currently in an alpha state with core API and functionality changes happening regularly. There are several major outstanding issues to be resolved:

  • database integration
  • site inheritance / locations and configurations
  • security / forms integration
  • code generators and console commands
  • exception / error handling
  • test cases.

Many of the original files have been updated to more closely match Symfony 2 and the Scorpio kernel is now a customised Kernel instance. Scorpio 2 supports Bundles and uses the same bundle definitions and setup process - however it does require custom paths and setup in some instances. Any Symfony Bundle that actively uses or requires symfony/framework-bundle will not work with Scorpio 2.

So far the following bundles have been created / ported:

  • FrameworkBundle - the core framework (similar to Symfony/FrameworkBundle)
  • SmartyBundle - Smarty interface
  • WebProfilerBundle - port of the Symfony 2 WebProfileBundle
  • DoctrineBundle - port of Doctrine/DoctrineBundle including DoctrineBridge.

Installation

Scorpio 2 is designed to be used with composer.phar and the packagist.org PHP package repository. You can start by cloning / forking this repo and then:

Composer will install the needed dependencies. Smarty is now available via Packagist and has been added as a custom repository to try and avoid a full checkout of the stable branch from their SVN repo.

Currently no default configuration is provided with Scorpio. This is an on-going development that has several outstanding issues (see status).

Contributing

Scorpio is an open source framework, previously hosted at SourceForge, it is now on GitHub for better sharing and development.

Further Reading

Previous versions and various background articles can be found at the Scorpio homepage scorpioframework.com.