Minimalist PHP framework
Find a file
2024-02-21 10:13:27 +01:00
docs Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
example Example: use AttrSet and cleanup way to handle item status possible values 2024-02-18 19:40:58 +01:00
locales Casuser auth backend: add user access filters feature 2024-02-21 10:13:27 +01:00
skel Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
src Casuser auth backend: add user access filters feature 2024-02-21 10:13:27 +01:00
static Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
templates Casuser auth backend: add user access filters feature 2024-02-21 10:13:27 +01:00
.codespell-exclusions Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +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 Make Db class static as other classes 2024-02-02 18:19:38 +01:00
.prettierignore Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
.yamllint.yaml Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
composer.json Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +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 Adjust example to use DBObject and CSV export 2024-02-18 18:27:59 +01:00
README.md Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +01:00
setup.cfg Introduce new pre-commit hooks and code cleaning 2024-01-23 19:23:10 +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 light 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.