An experimental MVC framework
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Tinker MVC

Software License Contributors Build Status Code Climate

An experimental framework to help me better understand various design concepts.


  • Fast, Lightweight, Minimalist
  • PSR Compliance
  • DI/IoC
  • MVC
  • Pluggable
  • Themable
  • Pretty URLs
  • Test Driven Design

Set Up

Configure apache so that it will point to the webroot directory.

Dispatching and Routing.

For example the URL

  1. Plugin: Something
  2. Controller: Main
  3. Action: view
  4. 5506 would be the same as $_GET['5506'] = true
  5. user:1 would would be the same as $_GET['user'] = 1


I follow The Semantic Versioning guidelines but like everything else, it is all in how you interpret the thing.

IMO git provides the version in the form of a commit hash so if your looking to checkout version 0.5.1 look for that commit message on the master branch and grab that commit. I only increment version numbers when I'm ready to push to master so my last commit to dev prior to merging into master branch will always have a commit message of 'Version x.x.x'.

  • Major: breaking changes.
  • Minor: new features; no breaking changes.
  • Patch: bug fixes, formatting, comments, documentation, etc; no breaking changes.

At version 0.x.x all changes should be considered breaking.

My intent is to try to determine how risky an upgrade would be. Patch and minor versions should be considered low risk upgrades while major version should be considered high risk (so pay closer attention). If you change something that is not considered public then all bets are off.