Minimalist PHP framework
Find a file
2023-02-28 19:44:01 +01:00
docs Add CLI command to initialize a new project 2023-02-26 23:53:16 +01:00
example Auth\Ldap: Improve attribute mapping 2023-02-28 15:34:35 +01:00
locales I18n: do not track temporary pot files 2023-02-28 01:52:07 +01:00
skel Auth\Ldap: Improve attribute mapping 2023-02-28 15:34:35 +01:00
src Url: add before_handling_request & after_handling_request hooks 2023-02-28 19:44:01 +01:00
static Add CLI command to initialize a new project 2023-02-26 23:53:16 +01:00
templates Add CLI command to initialize a new project 2023-02-26 23:53:16 +01:00
.gitignore Tpl: Add stuff to handle static files 2023-02-12 00:30:36 +01:00
.phplint.yml Add overtrue/phplint dev dependency and configure it 2022-04-24 18:30:13 +02:00
.pre-commit-config.yaml Some improvments from recent works on apps based on its "framework" 2023-01-29 11:51:41 +01:00
composer.json Rename the project author to allow to publish it on packagist.org 2023-02-26 18:38:57 +01:00
eesyphp Cli: add core_mode() method, set it in handle_args() and add an hook 2023-02-28 01:13:43 +01:00
phpstan.neon Add authentication support 2023-02-25 05:02:27 +01:00
README.md Update README file 2023-02-26 18:56:36 +01:00

EesyPHP

EesyPHP is an easy and minimalist PHP framework for web application. It's currently provided with a minimalist demo application that permit to manage items stored in a database.

Features

This project aim to provide all main necessary elements to build a web application without starting with nothing. It based on great open source libraries for that and manage their integration together and their initialization to leave you to use them without handling this boring part.

Main features are :

  • a configuration manager actually based on the yaml file format
  • an URL routing system with a syntax based on regex
  • a templating solution based on Smarty
  • an easily expandable authentication system with native HTML form, HTTP and CAS SSO support (based on phpCAS), database and LDAP users backends and a ligth user object abstraction solution with expandable attributes
  • a logging system with PHP errors & exceptions handling
  • a light database integration based on FluentPDO
  • a Sentry integration
  • a PHP session manager (with expiration and max life handling)
  • a mailer solution to forge and send emails
  • an hook system to easily trigger and register hooks on events
  • a static files serving system with an overloadable multiple directories support
  • an internationalization system based on Gettext with Smarty templates (based on Smarty Gettext) and Javascript (based on Babel JS) integrations
  • a command line manager to easily implement CLI tools
  • collection of helpers to check, clean, cast, format (etc) values

All this features can be or not enabled and their initialization are manage by an application abstraction class.

Installation / configuration

Please see dedicated files in docs directory.

Copyright (c) 2020 Benjamin Renard brenard@zionetrix.net

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.