Ratings | | Unique User Downloads | | Download Rankings |
Not enough user ratings | | Total: 281 | | All time: 7,607 This week: 66 |
|
Collaborate with this project | | Author |
Description This package is a model view controller micro-framework.
It provides base MVC classes to implement Web applications.
Currently it provides a router class that dispatches the request to a controller class based on the request URL, a view class that loads the current view script, a database access class, a configuration class to set environment variables, etc.. | |
|
|
Innovation award
Nominee: 1x
Winner: 1x |
|
Example
<?php
/**
* Frontend do app
*
* @author Joubert <eu@redrat.com.br>
*/
define('APP_PUBLIC_PATH', __DIR__);
define('FOX_PATH', implode(DIRECTORY_SEPARATOR, [__DIR__, '..', 'fox']));
require(FOX_PATH.DIRECTORY_SEPARATOR.'bootstrap.php');
\Fox\Lets::go();
|
Details
Fox
Fox is a MVC micro-framework written in PHP for building fast, simple and small applications. It emerged from a dark season, when I had issues with my internet connection and needed to do a simple test. Even away from contemporary world, from composer and from modern and cool libraries, I could still solve my problem :)
Install
-
`git clone https://github.com/joubertredrat/fox.git`
-
In your apache installation, set `public` folder as your document root and done, it's working!
In a near future, I will provide Fox
through composer create-project
Features
-
Extremely slim: `fox` directory's size is only 124 KB.
-
Written in pure PHP: you don't need any external library to get it running.
-
Dynamic router to controller, (see How does it work?.
-
Composer friendly: you can add any library you want without trouble.
-
Object-Oriented Controller and Model (and View, maybe sometime later).
How does it work?
Fox has a Dynamic router, based on uri requests into public/index.php, as shown below:
/users/list-admin/br = request
____________________________
| users == Controller\Users |
request => index.php => router | list-admin == listAdmin() | => Controller\Users->listAdmin(arg) => View
| br == arg <= br |
|____________________________|
Todo
-
[ ] Provide this through `composer create-project`.
-
[ ] Decouple routing from Apache's mod-rewrite, so it could run with Nginx or PHP built-in webserver, for example.
-
[ ] Refactor View to OOP aproach.
|
Applications that use this package |
|
No pages of applications that use this class were specified.
If you know an application of this package, send a message to the author to add a link here.