PHANG 0.5.1
0.5.0:
Major updates to Angular - moves to latest ngbp - Bootstrap 3, AngularJS ~1.2
0.4.0:
Major updates to PHP:
Moves from Silex 1.* to 2.*
Moves from simple Silex routing to Symfony controller/routing system
Updates to latest versions of Symfony components
0.3.0:
Adds Angular Resource
Updates Angular UI Router from 0.0.1 to 0.2.10
Updates Angular Bootstrap from 0.3.0 to 0.8.0
0.2.0: PHP Unit Tests added for Base.php class
Example at phang.erikaugust.com
What is heck is Phang?
Phang is a complete web application boilerplate.It combines the Silex PHP framework with the AngularJS JavaScript framework. Back-end concerns are handled by PHP and AngularJS handles front-end.
Why the name Phang?
Two reasons:
1. PHP + Angular = PH-Ang.
2. In earlier versions, the AngularJS interpolateProvider was changed to "{v{ }v}". They look like fangs. Since 0.2.0 has moved into the Single Page Application (SPA) format, using AngularJS for routing.
Who is the intended user?
Developers who would like to use their knowledge and freedom of creating their models/classes in PHP, but want to also quickly create RESTful APIs and a front-end application framework to connect to it.
Why should I try out Phang?
Phang gives you a flexible and organized way to create web applications front to back. Also, under development is the Phang command line utility which emulates some of the generator and utility functions of Ruby on Rails.
What are the requirements
PHP: 5.3.3+. Node.js must also be installed on your system.
<pTools/libraries used or included:
PHP:
Framework: Silex
Database Provider: PDO
Caching Providers: Memcache, Memcache-Silex
Email: swiftmailer
Package Management: Composer
Templating Engine: Twig
Session Handling: Symfony2 Session
HTTP: Symfony2 Foundation
Unit Testing: PHPUnit
AngularJS:
Phang uses the fantastic ng-boilerplate for organization and tooling:
Framework: AngularJS
Package Management: npm, bower
Unit Testing: Karma
Task Running: Grunt
PHP
1. Clone into the desired directorygit clone https://github.com/ErikAugust/phang.git
- Update composer
cd php
php composer.phar self-update
- Delete outdated vendor files
rm -rf vendor/
- Update composer to create new vendor files
php composer.phar update
- Set your default database credentials
vi config/database.ini
- Create a session folder
mkdir session/
- Point your browser to the /test endpoint. You should see Hello world! (http://phang.erikaugust.com/test). Now point your browser to the index. You will see something like this: http://phang.erikaugust.com. All set!
AngularJS
1. Move to the angular directorycd ..
cd angular
- Install Grunt-CLI, Karma and Bower
sudo npm -g install grunt-cli karma bower
npm install
bower install
- Run Grunt
grunt watch