View on GitHub

FEAST Framework

Fast, Easy, Agile, Slim, Tested and Trans Fat Free

FEAST Framework

FEAST Framework

What is FEAST?

Requirements

Getting started

Getting moving

Advanced Features

Scheduled and Queued Jobs

Extras

What is FEAST?

FEAST is a radically different PHP Framework that was built from the ground up to be an alternative to the dependency-heavy frameworks that exist already. Its goal is a light-weight footprint that just lets you get stuff done.

FEAST was designed, architected, and crafted with its name in mind.

What's in a name?

Fast

FEAST is performant and maintains a very small stack trace. FEAST also has native caching for configuration and routing to speed up requests. But that's not all we mean when we say FEAST is fast. FEAST is fast to develop in. FEAST was designed to reduce the need to write excessive boilerplate code.

Easy

FEAST was designed to get things done with very little learning. Routing, class creation, and running cli tools or scheduled jobs are all simplified in FEAST for the developer who wants to get things done.

Agile

FEAST was designed to be able to adapt to change quickly. FEAST is also designed to let you adapt to change quickly. FEAST has tools for database introspection and class/method creation that take away the pain of starting anew.

Slim

FEAST is extremely lightweight with no external dependencies to get up and running. By having no external dependencies, it is easier for FEAST to be...

Tested and Trans Fat Free

FEAST was crafted to be testable. FEAST uses Psalm static type analysis and no code is merged if it does not pass 100% static type analysis with zero errors on errorLevel 1. In addition, FEAST boasts 100% line coverage in PHPUnit.

What makes FEAST unique?

FEAST is radically different from every other PHP framework to date. FEAST has been carefully designed from the ground up with the following principles always in mind.

  1. No mandatory 3rd party code dependencies - FEAST took inspiration from many sources, but was written completely from scratch.
  2. Cutting edge - FEAST is designed to be used with (and indeed requires) the latest minor release of PHP. FEAST will leverage new features of the language whenever possible.
  3. Predictable versions - FEAST will release a new major release with each PHP version and will require that new version. The current version of FEAST runs on PHP 8.0. Previous major releases will still issue bug fixes for 2 prior PHP minor releases, so that "cutting edge" does not become a barrier to entry.

Requirements

The current release of FEAST requires >=PHP 8.2 and (if you wish to use the Curl service classes) PHP 8.2-curl. In addition, PHP 8.2-bcmath is recommended.

The v1.x line of FEAST requires >=PHP 8.0 and v2.x line requires >=PHP 8.1. The same recommendations above apply

FEAST currently works with the MySQL and PostgreSQL database management systems as well as with SQLite for simple queries.

The release plan for FEAST can be found here.

Getting started

The Five-Minute Quickstart

Configuring FEAST

Routing

Access Control via Environment

Your First Controller

Getting moving

Working with Controllers

Working with Views

Service Container and Dependency Injection

The FEAST CLI

The Logger

Advanced Features

Working with Databases

Working with Dates

Working with Plugins

Collections

JSON Files

CSV Files

Services

Forms

Sessions

Deferred Actions

Scheduled and Queued Jobs

Queueable Jobs

Scheduled Jobs

Extras

Throttle Plugin

Contributors

 

Powered by FEAST Framework
See this project at https://github.com/feastframework/documentation