payperlez / inna
A PHP minimal framework which allows you to control every bit of it.
Requires
- php: >=8.4
- ext-curl: *
- ext-fileinfo: *
- ext-mbstring: *
- ext-openssl: *
- ext-pdo: *
- ext-sodium: *
- firebase/php-jwt: ^7.0
- geoip2/geoip2: ~2.0
- league/commonmark: ^2.7
- phpmailer/phpmailer: ^6.8
- twig/string-extra: ^3.3
- twig/twig: ^3.27
- vlucas/phpdotenv: ^5.4
Requires (Dev)
None
Suggests
- ext-gd: Optimize and store intentionally public images
- ext-pdo_mysql: Use the bundled MySQL/MariaDB migrations
Provides
None
Conflicts
None
Replaces
None
README
A minimal PHP MVC framework by Payperlez. PHP >=8.4 is required.
This is Inna 2.0. Read the upgrade guide before applying framework changes to an existing application.
Start from this checkout
composer install
cp env.example .env
php -S 127.0.0.1:8080 -t . dev-router.php
Do not overwrite an existing .env. Set DOMAIN=127.0.0.1:8080. Open the landing page at http://127.0.0.1:8080 and developer guides at http://127.0.0.1:8080/documentation.
The homepage and documentation do not require a database connection, Payperlez credentials or private-storage keys. Configure those features when you use them.
Developer guide
- Quickstart and configuration
- Routing, controllers and views
- Database and migrations
- Authentication and JWT
- Private encrypted uploads and public images
- Payperlez payments, SMS/OTP and webhooks
- Deployment, testing and upgrading to 2.0
Verify
composer check-platform-reqs
composer validate --strict
composer test
php tests/http.php
The HTTP suite starts its own isolated localhost server. Tests use simulated Payperlez responses; no real payment or SMS is initiated.
License
MIT. Maintained by the Payperlez team.