PSX Framework

About

PSX is a framework written in PHP to create RESTful APIs. It helps you building clean URLs serving web standard formats like JSON, XML, Atom and RSS. At the core PSX is build of three parts. A handler system (similar to repositories in doctrine) which abstracts away the actual SQL queries from the domain logic. An routing system which executes the fitting controller method depending on the location of the controller and the annotation of the method. And an flexible data system to convert data records from the database into different formats like JSON, XML, Atom and RSS. PSX uses a lightweight DI container to handle dependencies (but is also compatible with the symfony DI container). The controller can return request or response filter which can react or modify the HTTP request or response. PSX offers some basic request filter to handle i.e. Basic or Oauth authentication. In addition PSX offers some cool components to use and implement OAuth, OpenID, Opengraph, Opensocial, Opensearch, PubSubHubbub, WebFinger, Atom, and RSS. For more examples and informations please see the documentation section. To get an first idea how PSX works here a short introduction video.

Release

This is the official release of PSX. PSX tries to follow the semantic versioning. The public API documentation is shipped with each release in the doc folder. You can also browse all releases at GitHub. The preferred way of installing PSX is through composer

Composer

php composer.phar create-project psx/sample .

Download

Documentation

Manual
The official manual of PSX
API
The official API of PSX
Test coverage
Shows how many code is covered by tests
Examples
The example page offers sample PSX applications which are documented
Source
The repository of PSX

Latest commits

k42b3 on 2014-04-19T14:11:08Z

fix for hhvm pass null of no args are set

1a8fee4855

k42b3 on 2014-04-18T19:16:47Z

fix annotation parser test

1db0d8f657

k42b3 on 2014-04-18T17:32:06Z

remove paypal credentials from paypal class and add payment builder

2532fc11fb

k42b3 on 2014-04-18T17:22:21Z

fix test response message

98df990dbc

k42b3 on 2014-04-18T17:21:53Z

remove getRecord from test

660fe55fa5

k42b3 on 2014-04-18T17:21:15Z

call supported fields once

0d21afeb6f

k42b3 on 2014-04-18T17:20:29Z

move methods to controller abstract

724b96d2aa

k42b3 on 2014-04-18T17:19:09Z

add supported writer

18fc198f83