Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A HTTP-friendly framework of controllers for PHP5.
PHP CSS
Branch: master
Failed to load latest commit information.
docs
examples Translation2 throws strict warnings, so need to exclude those
lib/konstrukt
script Made sure that only test files with the proper naming scheme is run
test Characters in wrong place removed.
.travis.yml Added Travis support
LICENSE Renamed namespace from k2 -> k
README.markdown Added Travis CI build status.
UPGRADING Update UPGRADING

README.markdown

konstrukt.dk Build Status

About

Konstrukt is a minimalistic framework which provides a foundation on which to build rather than a boxed solution to all problems. It focuses on the controller layer, and tries to encourage the developer to deal directly with the HTTP protocol instead of abstracting it away. Konstrukt uses a hierarchical controller pattern, which provides a greater level of flexibility than the popular routed front controller frameworks.

Key Aspects

  • Controllers are resources
  • URI-to-controller-mapping gives your application a logical structure
  • Routing based on logic rather than rules
  • Nested controllers supports composite view rendering

Design Goals

  • Embrace HTTP rather than hide it
  • Enable the programmer, rather than automating
  • Favour aggregation over code-generation or config-files
  • Encourage encapsulation, and deter use of global scope
  • Limit focus to the controller layer

Getting Started

Read the documentation

You can read the documentation on konstrukt.dk

Installing through PEAR

The easiest way to install Konstrukt, is through PEAR. In a console, type the following:

sudo pear channel-discover pearhub.org
sudo pear install pearhub/konstrukt

Creating a new project

You can create a new project by cloning the starterpack under /examples/:

Download the newest version of konstrukt from: http://github.com/troelskn/konstrukt/downloads. Then copy starterpack_default:

cp -R examples/starterpack_default /var/www/foo

Replace /var/www/foo with the location where you want your app to reside.

Something went wrong with that request. Please try again.