4f2259f118
- Add alertify lib and provide its default configuration - Add copy_to_clipboard() function and the CSS copyable class - Enable Bootstrap tooltips - Add CSS share-links class helper: link's URL is copied to clipboard - Add Bootstrap 5 like 3-states switches - Add show_form_modal(), validate_form() and handle_ajax_return() helper functions |
||
---|---|---|
docs | ||
example | ||
locales | ||
skel | ||
src | ||
static | ||
templates | ||
.codespell-exclusions | ||
.gitignore | ||
.phplint.yml | ||
.pre-commit-config.yaml | ||
.prettierignore | ||
.yamllint.yaml | ||
composer.json | ||
eesyphp | ||
phpstan.neon | ||
README.md | ||
setup.cfg |
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
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.