A lightweight, hand-crafted PHP framework built for performance and clarity.
SharkyPHP abandons bloated abstractions and redundant layers, offering a clean kernel that unifies HTTP web requests and CLI command execution under one architecture.
It ships with separated official components — dependency container, database layer with query builder, cache, Redis adapter, session, compiled template engine and console pipeline — each staying independent with clear boundaries, while the core kernel orchestrates their lifecycle.
onion middleware pipelines, context isolation, database read-write separation, and flexible driver implementations. Minimal dependencies, straightforward source code, easy to trace and extend. Build high-performance web and console applications with full control of your runtime.
—— ByteSharky
This organization (sharkyphp) hosts the read-only, split distribution of the framework. The actual source of truth lives in the upstream monorepo:
| Repository | Role |
|---|---|
bytesharky/sharkyphp-v2 |
🔗 Upstream monorepo — all packages live under packages/*. Development, commits and release tags happen here. |
sharkyphp/splitter |
The split bot. Hourly cron clones the monorepo, and force-pushes each package into its own repository below. |
sharkyphp/project |
The a empty SharkyPHP project skeleton. composer create-project sharkyphp/project my-app |
sharkyphp/<package> |
The individual, read-only Composer packages consumed via Packagist. Never push to these by hand — they are regenerated on every tag. |
All code, issues and pull requests go to the upstream monorepo: 👉 https://github.com/bytesharky/sharkyphp-v2
To release a new version, tag vX.Y.Z on the monorepo and push; the splitter picks it up automatically (≤ 1 hour) and republishes every package.
- Official docs site: (https://docs.sharky.xin)
- Packagist: (register the packages, then link here)
Proprietary — see the upstream monorepo for details.