PHPackages                             php-palm/project - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. php-palm/project

ActiveProject[Utility &amp; Helpers](/categories/utility)

php-palm/project
================

PHP Palm starter project

0.2.3(3mo ago)022MITPHP

Since Nov 15Pushed 3mo agoCompare

[ Source](https://github.com/ShoaibShokat03/php-palm)[ Packagist](https://packagist.org/packages/php-palm/project)[ RSS](/packages/php-palm-project/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (4)Versions (6)Used By (0)

🌴 PHP Palm Framework
====================

[](#-php-palm-framework)

**The Modern, Modular, Developer-Friendly PHP Framework**

> Build powerful PHP applications with clean code, zero boilerplate, and a smile on your face.

[![PHP Version](https://camo.githubusercontent.com/2f6f9af2e917cbf5786673e8e4ed8d0d9b29be6131327a992063e69136a93411/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e302532422d626c7565)](https://php.net)[![License](https://camo.githubusercontent.com/f8df3091bbe1149f398a5369b2c39e896766f9f6efba3477c63e9b4aa940ef14/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e)](LICENSE)

---

✨ Why PHP Palm?
---------------

[](#-why-php-palm)

**PHP Palm** combines the simplicity of a micro-framework with the power of enterprise-grade features:

- 🚀 **Generate Full Modules in Seconds** - `palm make:module Products` creates Controller, Service, Model in one command
- 🛡️ **NestJS-Style Validation** - Use PHP 8 Attributes (`#[Required]`, `#[IsEmail]`) in your Models
- 🔌 **HMVC Architecture** - Call routes like functions (`UserModule::get('/users')`) - no HTTP overhead!
- ⚡ **ActiveRecord ORM** - Fluent queries (`User::where('active', 1)->all()`)
- 🎨 **Complete Frontend System** - Views, Components, Hot Reload, PWA, SEO tools
- 🔒 **Production-Ready Security** - CSRF, XSS, CSP, Rate Limiting out of the box

---

🚀 Quick Start
-------------

[](#-quick-start)

```
# 1. Install
composer create-project php-palm/framework my-app
cd my-app

# 2. Configure
cp config/.env.example config/.env
# Edit config/.env with your database credentials

# 3. Start Development Server (with hot reload!)
palm serve

# 4. Create Your First Feature
palm make:module Products
```

**That's it!** Your API is live at `http://localhost:8000/products` 🎉

---

💡 The Palm Way
--------------

[](#-the-palm-way)

### 1. Define Your Model (with Validation!)

[](#1-define-your-model-with-validation)

No separate validation files. No configuration arrays. Just clean, declarative code:

```
class ProductModel extends BaseModel {
    protected string $table = 'products';

    #[Required]
    #[IsString #[Length(min: 3)]
    public string $name;

    #[Required]
    #[Min(0)]
    public float $price;
}
```

### 2. Use It in Your Service

[](#2-use-it-in-your-service)

Validation happens automatically. No boilerplate:

```
public function create(array $data) {
    // ✨ Magic: validates AND hydrates
    $product = ProductModel::validate($data);
    $product->save();
    return $product;
}
```

### 3. That's It!

[](#3-thats-it)

The Controller, Routes, and everything else was generated for you by `palm make:module`.

---

📚 Features
----------

[](#-features)

### 🛠️ Developer Experience

[](#️-developer-experience)

- **20+ CLI Commands** - Generate code, manage migrations, optimize production
- **Hot Reload** - WebSocket-based instant browser refresh
- **Auto-completion** - Full IDE support with type hints

### 🗄️ Database

[](#️-database)

- **ActiveRecord ORM** - Intuitive database operations
- **Query Builder** - Fluent interface for complex queries
- **Migrations** - Version control for your database
- **Seeders** - Populate test data easily

### 🔐 Security

[](#-security)

- **CSRF Protection** - Auto-injected tokens
- **XSS Protection** - Safe output helpers
- **SQL Injection Protection** - Prepared statements
- **Security Headers** - CSP, X-Frame-Options, HSTS
- **Rate Limiting** - Per-route protection

### 🎨 Frontend

[](#-frontend)

- **Palm Views** - PHP templating with `.palm.php` extension
- **Component System** - Reusable UI components
- **PWA Support** - Progressive Web App generation
- **SEO Tools** - Meta tags, sitemaps, Open Graph
- **Asset Optimization** - Minification, lazy loading

### ⚡ Performance

[](#-performance)

- **Route Caching** - Zero overhead in production
- **View Caching** - Pre-compiled templates
- **Gzip/Brotli** - Automatic compression
- **Progressive Loading** - Smart asset management
- **Internal Calls** - HMVC pattern (no HTTP overhead)

---

📖 Documentation
---------------

[](#-documentation)

### **[👉 Read the Complete Documentation (DOCS.md)](DOCS.md)**

[](#-read-the-complete-documentation-docsmd)

**Quick Links:**

- [CLI Commands Reference](DOCS.md#cli-commands)
- [Module System Guide](DOCS.md#module-system)
- [Validation Attributes](DOCS.md#model-validation)
- [ActiveRecord ORM](DOCS.md#activerecord-orm)
- [Routing &amp; Internal Calls](DOCS.md#routing)
- [Frontend Features](DOCS.md#frontend-features)

**Additional Guides:**

- [ActiveRecord Usage](ACTIVERECORD_USAGE.md) - Detailed ORM guide
- [Internal Routes](MODULE_INTERNAL_ROUTES.md) - HMVC pattern explained
- [SEO Meta Tags](SEO_META_TAGS.md) - SEO tools guide

---

🎯 Use Cases
-----------

[](#-use-cases)

**Perfect for:**

- ✅ RESTful APIs
- ✅ Full-stack web applications
- ✅ Internal admin panels
- ✅ Microservices
- ✅ Rapid prototyping
- ✅ Learning modern PHP

**Not ideal for:**

- ❌ Extremely simple static sites (use flat HTML)
- ❌ Projects requiring specific frameworks (Laravel, Symfony)

---

🏗️ Project Structure
--------------------

[](#️-project-structure)

```
my-app/
├── modules/          # Your modules (auto-generated)
│   └── Products/
│       ├── Module.php
│       ├── Controller.php
│       ├── Service.php
│       └── Model.php
├── src/              # Frontend (views, layouts, assets)
│   ├── views/
│   ├── layouts/
│   └── routes/
├── app/              # Framework core
│   ├── Core/
│   └── Palm/
├── config/           # Configuration
│   └── .env
├── database/         # Migrations & seeders
├── public/           # Public assets
└── palm              # CLI tool

```

---

🔥 CLI Examples
--------------

[](#-cli-examples)

```
# Code Generation
palm make:module Users                    # Full CRUD module
palm make:model Products Product          # Just a model
palm make:component Button                # UI component

# Database
palm make:migration create_orders_table
palm migrate                              # Run migrations
palm db:seed                              # Seed database

# Development
palm serve                                # Dev server + hot reload
palm logs:tail                            # Watch logs in real-time

# Production
palm optimize                             # Cache everything
palm cache:clear                          # Clear all caches
```

---

🤝 Contributing
--------------

[](#-contributing)

We welcome contributions! Please:

1. Fork the repository
2. Create a feature branch
3. Submit a pull request

---

📄 License
---------

[](#-license)

MIT License - feel free to use Palm in your projects!

---

💬 Community
-----------

[](#-community)

- **Issues**: [GitHub Issues](https://github.com/your-repo/php-palm/issues)
- **Discussions**: [GitHub Discussions](https://github.com/your-repo/php-palm/discussions)

---

 **Built with ❤️ for PHP developers who value their time**

 [📖 Read Full Documentation](DOCS.md)

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance79

Regular maintenance activity

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity29

Early-stage or recently created project

 Bus Factor1

Top contributor holds 66.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~28 days

Total

5

Last Release

117d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/117985809?v=4)[Muhammad Shoaib](/maintainers/ShoaibShokat03)[@ShoaibShokat03](https://github.com/ShoaibShokat03)

---

Top Contributors

[![ShoaibShokat](https://avatars.githubusercontent.com/u/94538577?v=4)](https://github.com/ShoaibShokat "ShoaibShokat (8 commits)")[![ShoaibShokat03](https://avatars.githubusercontent.com/u/117985809?v=4)](https://github.com/ShoaibShokat03 "ShoaibShokat03 (4 commits)")

### Embed Badge

![Health badge](/badges/php-palm-project/health.svg)

```
[![Health](https://phpackages.com/badges/php-palm-project/health.svg)](https://phpackages.com/packages/php-palm-project)
```

###  Alternatives

[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[blair2004/nexopos

The Free Modern Point Of Sale System build with Laravel, TailwindCSS and Vue.js.

1.2k2.4k](/packages/blair2004-nexopos)[v.chetkov/php-clean-architecture

PHP Clean Architecture

14661.1k](/packages/vchetkov-php-clean-architecture)[brianhenryie/strauss

Prefixes dependencies namespaces so they are unique to your plugin

190438.1k36](/packages/brianhenryie-strauss)[typo3/cms-install

TYPO3 CMS Install Tool - The Install Tool is used for installation, upgrade, system administration and setup tasks.

1812.3M496](/packages/typo3-cms-install)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
