The first thing you might want to do is visualize your directory structures. Fat-Free gives you total control over your Web site. Organize your folders in any way that pleases you (or your development team if you're part of a group). Decide where you want to store the following:
- Application and code libraries
- HTML templates
- Graphics and media files
- Database (if you plan to use an embedded DB like SQLite)
- Configuration files
For security reasons, consider relocating the
lib/ folder to a path that's not Web-accessible. If you decide to move this folder, just change the line in
require 'lib/base.php'; so it points to the new location. The
lib/ folder also contains framework plug-ins that extend F3's capabilities. You can change the default location of all plug-ins by moving the files to your desired subdirectory. Then, it's just a matter of pointing the
PLUGINS global variable to the new location. You may delete the plug-ins that you don't need. You can reinstate them later as you find necessary.
F3 can autoload OOP classes for you. Just add the path to the
When you're ready to write your F3-enabled site, you can start editing the rest of the code contained in the
index.php file that displayed this Web page. Developing PHP applications will never be the same!
Some framework features in this version will not be available if PHP is not configured with the modules needed by your application.
Baseclass requires all listed PHP modules enabled to function properly.
Cacheclass will use any available module in the list. If none can be found, it will use the filesystem as fallback.
DB\SQLclass requires the
pdomodule and a PDO driver relevant to your application.
Bcryptclass will use the
opensslmodule for entropy generation. Otherwise, it employs a custom random function.
Webclass will use the
curlmodule for HTTP requests to another server. If this is not detected, it will use other transports available, such as the HTTP stream wrapper or native sockets.
geoipmodule listed in the
Web\Geoclass is optional; the class will use an alternative Web service for geo-location.
- Other framework classes in the list need all its listed modules enabled.
If you have any questions regarding the framework, technical support is available at
You can also join our Slack Channel to get support
Need live support? You can talk to the development team and the rest of the Fat-Free community via IRC. We're on the FreeNode (
#fatfree channel. If the channel appears quiet, the development team might just be busy with the next great release, or it's probably due to time zone differences. Just hang around.
The User Reference is designed to serve as a handbook and programming guide. However, the online documentation at
https://github.com/bcosca/fatfree provides the latest and most comprehensive information about the framework.
Fat-Free Framework is free software covered by the terms of the GNU Public License (GPL v3). You may not use the software, documentation, and samples except in compliance with the license. If the terms and conditions of this license are too restrictive for your use, alternative licensing is available for a very reasonable fee.
If you feel that this software is one great weapon to have in your programming arsenal, it saves you a lot of time and money, use it for commercial gain or in your business organization, please consider making a donation to the project. A significant amount of time, effort, and money has been spent on this project. Your donations help keep this project alive and the development team motivated. Donors and sponsors get priority support commensurate to your contribution (24-hour response time on business days).
F3 is community-driven software. Support the development of the Fat-Free Framework. Your contributions help keep this project alive.