epaphrodites / epaphrodites
Epaphrodites framework combines simplicity, compatibility with Python, support for multiple databases, and a commitment to open-source principles.
Installs: 317
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:project
Requires
- brick/math: ^0.11.0
- chillerlan/php-qrcode: ^4.3
- symfony/console: ^6.2
Requires (Dev)
- php: >=8.2
- guzzlehttp/guzzle: ^7.5
- mpdf/mpdf: ^8.2
- phpmailer/phpmailer: ^6.8
- phpoffice/phpspreadsheet: ^1.28
- phpunit/phpunit: ^10.4
- twig/twig: ^3.5
This package is auto-updated.
Last update: 2025-04-19 05:24:58 UTC
README
👋 About Epaphrodites
Epaphrodites is a modern, modular, and open-source framework that combines the power of PHP, Python, and C.
It emphasizes:
- ✨ Simplicity
- 🛠️ Flexibility
- 🌐 Multi-database support
- 💡 Developer-friendly tools
- 🧠 Native integration of C for performance-critical components
Designed for developers who want full control of their stack, Epaphrodites bridges interpreted and compiled logic to deliver speed without sacrificing convenience.
🧩 PHP Required & Optional Extensions (PHP >= 8.2)
✅ Required PHP Extensions
- OpenSSL — SSL/TLS encryption, secure connections
- ZIP — Compression/decompression of ZIP archives
- GD — Image manipulation: resizing, filters, etc.
- intl — Internationalization, locale/date formatting
- PDO — Unified database interface
- JSON — JSON data encoding/decoding
- XML — Parsing and manipulating XML files
- Mbstring — Multi-byte string support (e.g. UTF-8)
- pdo_sqlite — PDO driver for SQLite3
🔧 Optional Extensions
- Redis — Caching & sessions with Redis
- pdo_oci — Oracle DB support
- pdo_mysql — MySQL/MariaDB support
- mongodb — MongoDB (NoSQL) integration
- pdo_pgsql — PostgreSQL support
- pdo_sqlsrv — Microsoft SQL Server support
⚙️ System Dependencies
- PHP Dev Tools — Required to compile extensions (
php-dev
for Linux /php
for macOS) - Python3 — Needed for Python integration
- C Compiler — Recommended for building native components and optimizing extensions
💡 Key Notes
- Required extensions provide core features (DB, encryption, image/text processing).
- Optional ones depend on your tech stack.
- System dependencies are critical for compilation (
phpize
) and C/Python interoperability.
🚀 Installation
composer create-project epaphrodites/epaphrodites your-project-name
⚠️ Recommendation : If you have already installed MongoDB
on your machine and wish to incorporate its usage into your project, please execute the following command:
composer require mongodb/mongodb
Continue the installation :
Execute the following command to update all dependencies :
composer update
To execute "dump-autoload," run the command :
composer dump-autoload
⚙️ First configuration
- Open this file (SetDirectory.php)
bin\config\SetDirectory.php
- Set database accpeted : ('mysql/oracle/pgsql/sqlserver/sqlite/mongodb/redis')
define('_FIRST_DRIVER_', 'sqlite');
- Open this file (Config.ini)
bin\config\config.ini
- Choose your first configuration
// First DB username 1DB_USER = // First DB password 1DB_PASSWORD = // First DB port 1DB_PORT = // First DB name 1DB_DATABASE = "epaphroditesdb.sqlite" // First DB SOCKET support 1DB_SOCKET = false // First DB socket 1DB_SOCKET_PATH = "" // First DB host 1DB_HOST = "127.0.0.1" // First DB DRIVER - accepted : mysql/oracle/pgsql/sqlserver/sqlite/mongodb/redis 1DB_DIVER = "sqlite"
💾 Create database
Run this command to create your database
php heredia create:db epaphroditesdb
🐍 Install python component
- Note: This command is intended for users who have previously installed Python on their machine. It simplifies the installation of specific Python libraries essential for the optimal functioning of the Epaphrodites framework. Furthermore, you have the freedom, at your level, to integrate other libraries according to the requirements of your projects :
php heredia pip:component
🔧 Compile C components
- Note: This command is for users who have C development tools installed on their machine. It compiles the C components essential for performance-critical operations in the Epaphrodites framework:
sudo ./shlomo
- Ensure you've set the proper executable permissions before running: :
chmod +x shlomo
🔥 Run your App
- Note: For SQL databases, you must create your database before running your application. In the case of MongoDB, the system will generate your database based on your configuration.
Run server
cd your_project
php heredia run:server --port=8000
Authentification access
Login : admin Password : admin
😎 Enjoy yourself
📗 Documentation
👥 Authors
🤝 Contributing
Contributions are welcome! Fork the repo, make changes, and submit a pull request.