Download the PHP package bamise/framework without Composer
On this page you can find all versions of the php package bamise/framework. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download bamise/framework
More information about bamise/framework
Files in bamise/framework
Package framework
Short Description Secure enterprise CRUD library for PHP 8.4+ — hexagonal architecture, DDD, PSR standards, JWT/CSRF/XSS protection, event system.
License MIT
Homepage https://github.com/segunmayor/bamise.git
Informations about the package framework
Bamise
Bamise
Enterprise Secure CRUD Automation Framework
Secure enterprise CRUD library for PHP 8.4+ built on hexagonal (ports-and-adapters) architecture. Domain-driven, PSR-compliant, zero hardcoded dependencies.
Features
- Hexagonal architecture — contracts, domain, application, infrastructure layers fully separated
- Repository pattern — PDO-backed with MySQL, MariaDB, PostgreSQL, and SQLite dialects
- Security-first — CSRF protection, HTML sanitisation, cache-backed rate limiting, HMAC request signing, bearer/session/JWT auth stubs, PSR audit logging
- Event system — synchronous dispatcher, async queue bridge, before/after CRUD lifecycle hooks, subscriber autoloading
- Policy engine — callable and class-based access policies with a chainable evaluator
- Middleware pipeline — pluggable before/after handlers with a
PipelineStatevalue object - PHPUnit 11 — full unit test suite; PHPStan level 6; PHP CS Fixer; Infection mutation testing
Requirements
| Requirement | Version |
|---|---|
| PHP | 8.4+ |
| psr/container | ^2.0 |
| psr/log | ^3.0 |
Optional: firebase/php-jwt ^6.10 for JwtAuthAdapter (HS256 bearer validation).
Installation
Quick Start
1. Define a resource
2. Wire up the repository
3. Register resources and build the application
4. Dispatch an operation
Security
CSRF Protection
Rate Limiting
Request Signing (HMAC)
Access Policies
Event System
Listening to CRUD lifecycle events
Subscriber classes
Async (queued) listeners
Architecture
Bamise follows hexagonal (ports-and-adapters) architecture. Full module documentation lives under docs/architecture/.
| Module | Path | Description |
|---|---|---|
| 1 — Contracts | src/Contract/ |
Pure interfaces and value objects only |
| 2 — Domain | src/Domain/ |
Models, services, policies, lifecycle events |
| 3 — Application | src/Application/ |
Orchestrator, middleware pipeline, strategies, response mapping |
| 4 — Infrastructure | src/Infrastructure/Persistence/ |
PDO connection, dialects, SQL compiler, repositories |
| 8 — Security | src/Infrastructure/Security/ |
CSRF, XSS, rate limiting, HMAC signing, auth adapters, audit |
| 9 — Events | src/Infrastructure/Event/ |
Sync dispatcher, async queue bridge, subscriber loader, plugin hooks |
| 11 — CI/CD | .github/workflows/ |
PHPUnit, PHPStan, PHP CS Fixer, Infection |
| 12 — Composer | composer.json |
Packagist metadata, scripts, semantic versioning |
Development
Available commands
Running tests
Static analysis
Code style
Mutation testing
Contributing
See CONTRIBUTING.md.
Security Policy
See SECURITY.md.
License & Copyright
Formerly: Sitcalm Current: Bamise Framework Support development via donations
Copyright (c) 2026 Segun Mayor
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for the full text.