https://github.com/forge-engine/forge
Application-Hosted Kernel with pluggable capabilities Main Dev Repo
https://github.com/forge-engine/forge
forge forge-engine forge-kernel php
Last synced: 25 days ago
JSON representation
Application-Hosted Kernel with pluggable capabilities Main Dev Repo
- Host: GitHub
- URL: https://github.com/forge-engine/forge
- Owner: forge-engine
- License: other
- Created: 2025-02-24T20:54:27.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2026-02-03T16:36:51.000Z (2 months ago)
- Last Synced: 2026-02-04T06:18:46.491Z (2 months ago)
- Topics: forge, forge-engine, forge-kernel, php
- Language: PHP
- Homepage: https://forge-engine.github.io/
- Size: 29.5 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Forge
**Forge is an Application Hosted Kernel with pluggable capabilities.**
It's here because I
wanted a fast, simple, no-magic kernel that puts *me* in control. That's what Forge is — a kernel, not a framework. If that works for you too,
welcome.
---
## Philosophy
Forge is not here to be everything for everyone.
It’s here to give you a strong, minimal foundation you can **own**.
You’re not a user. You’re a builder.
- If you use Forge, it belongs to you now. Your rules. Your way.
- You get a solid base, and updates if you want them.
- If my direction doesn’t fit yours — fork it, and forge your own path.
- I’ll keep publishing modules and improvements that help me build real-world apps. You’re free to take what helps,
ignore what doesn’t.
This isn’t a product. This is a toolbox.
---
## What's In The Box
- Simple, fast dependency injection container
- Native PHP view engine with layouts and components
- Modular structure (install only what you need)
- Zero dependencies, zero magic
- Built-in router, configuration manager, and core services
- Pluggable capabilities system — capabilities are packed as modules
- Module system with life cycle hooks
- CLI for installing modules, project, scaffold commands etc.
**Capabilities, not built-ins.** Database, ORM, authentication, storage — these aren't built into the kernel. They're capabilities you plug in via modules when you need them. The kernel stays lean. You stay in control.
Everything is structured for clarity. No magic files. No guesswork.
---
## Install
### With the Installer (Recommended)
```bash
bash <(curl -Ls https://raw.githubusercontent.com/forge-engine/installer/main/installer.sh)
```
### Manually
```bash
git clone https://github.com/forge-engine/forge-starter
cd forge-starter
cp env-example .env
php install.php
php forge.php key:generate
php forge.php package:install-project
```
---
## Capabilities as Modules
Forge starts minimal (under 400KB), and you add capabilities as modules when you need them.
Need a database? Install a database capability module. Need an ORM? Install an ORM capability module. Authentication, storage, testing — all capabilities, all optional, all pluggable.
```bash
php forge.php package:install-module --module=forge-auth
php forge.php package:install-module --module=forge-storage
php forge.php package:install-module --module=forge-database-sql
```
Or clone from [github.com/forge-engine/modules](https://github.com/forge-engine/modules) and drop them in `/modules`.
I publish capability modules that help me build real-world projects. If something's too specific, I won't. Or I'll release a
simplified version.
---
## Want to Build Your Own Kernel?
Do it. I'll even show you how.
See: [`FORGING-YOUR-OWN.md`](./docs/FORGING-YOUR-OWN.md)
You can rename the CLI, change the bootstrap flow, use your own registry, build your own capabilities — everything is yours now. That's the point. This is a kernel, not a framework. You're the builder.
---
## License
MIT — take it, use it, change it.
Just don’t whine if it’s not what you expected.
Nobody owes you anything. Build your own vision.