PHPackages                             bootphp/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. [Framework](/categories/framework)
4. /
5. bootphp/project

ActiveLibrary[Framework](/categories/framework)

bootphp/project
===============

Web Skeleton Application for bootphp

0.0.0(8y ago)037MITPHPPHP &gt;=5.5.0

Since Jul 11Pushed 5y ago1 watchersCompare

[ Source](https://github.com/bootphp/project)[ Packagist](https://packagist.org/packages/bootphp/project)[ RSS](/packages/bootphp-project/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

BootPHP
=======

[](#bootphp)

Simple and Light weight MVC framework in PHP, it serves all stable functionalties like routing (native), caching (phpFastCache), database (Redbeans &amp; PDO), templating (Smarty), authentication (Basic,SSO &amp; Custom), Session/Roles etc.

Pre-requisite
-------------

[](#pre-requisite)

- XAMPP [instructions](https://github.com/boilerplatez/docs/blob/master/markdown/xampp/ENV.md)
- PHP/Copmoser [instructions](https://github.com/boilerplatez/docs/blob/master/markdown/php/ENV.md)

Setup
-----

[](#setup)

```
$ composer create-project bootphp/project my_project
$ cd my_project
$ composer update
$ composer require bootphp/rudrax
```

Build
-----

[](#build)

- Whenever there are changes in Any Controller-Annotations you need to hit this url

```
    http://local.piggy.com?RX_MODE_DEBUG=true&RX_MODE_BUILD=1&_display_errors_=2

```

Working?
--------

[](#working)

- Hit these urls in your browser and see the outputs you get

```
    http://local.piggy.com/welcome?name=Lucas
    http://local.piggy.com/api/data/7
    http://local.piggy.com

```

Documentation
-------------

[](#documentation)

### Folder Structure

[](#folder-structure)

If you have used create-project command then this directory structure will be automatically created for you. Otherwise create it manually. and make sure build folder has correct permisson 0777

```
-app
  L controller  // Controller/URL Mapping for Project, name of file and class should match
  L model       //Models being Used in Porject
  L view        //Smart Templates
-config
  L project.properties //Project Properties
-build          // Build/Temporary Files created by Framwork, need write permissions
-src            // Folder for static files like javascript,html,css
-lib            // composer library folder
-index.php
.htaccess
-composer.json  // set config->vendor-dir = lib

```

### Sample Controller \[app/controller/MyController.php\]

[](#sample-controller-appcontrollermycontrollerphp)

```
namespace app\controller {

    class MyController extends AbstractController
    {
        /**
         * @RequestMapping(url="login",method="GET",type="template")
         * @RequestParams(true)
         */
        public function login($model,$username,$password)
        {
            if($username == "user1" && $password == "xDddfdfd"){
              $this->user->setValid(TRUE);
              $this->user->role = "USER";
              $model->assign("username", $username);
              return "welcome"; // 'welcome' is path of smarty tempalte file in view folder
            } else {
              $this->user->setValid(FALSE);
               $model->assign("error", "Wrong credentials");
              return "login"; // 'login' is path of smarty tempalte file in view folder
            }
        }

        /**
         * @RequestMapping(url="myprofile",method="GET",type="template")
         * @RequestParams(true)
         */
        public function myprofile($model)
        {
            if($this->user->isValid()){
              $model->assign("username", $this->user->uname);
              return "user/myprofile"; // 'user/myprofile' is path of smarty tempalte file in view folder
            } else {
              $this->user->setValid(FALSE);
               $model->assign("error", "You need to login to view this page");
              return "login"; // 'login' is path of smarty tempalte file in view folder
            }
        }

        /**
         * @RequestMapping(url="info/school/{category}",method="GET",type="json")
         * @RequestParams(true)
         */
        public function schoolinfo($category)
        {
            if($this->user->isValid()){
              return array( "success" => true, "id" => 23,"name"=>"DAV Public School");
            } else {
              return array("success" => false,"error"=> "You need to login to view this info");
            }
        }

    }
}
```

### Controller Annotation Options

[](#controller-annotation-options)

All are method level annotations

- **@RequestMapping** - URL info
    - *url* - url pattern to match
    - *method* - request method \[GET|POST|PUT|DELETE\] - used only if mentioned
    - *type* - response type \[template|json|data\] - data
    - *auth* - if url acccess requires basic auth \[TRUE|FALSE\] - FALSE
    - *cache* - if response is cacheable by server \[TRUE|FALSE\] - FALSE
    - *guestcache* - cacheable only if guest user (user not valid) \[TRUE|FALSE\] - FALSE
- **@RequestParams** - if query params to be fetched and used in controller. \[TRUE|FALSE\] - FALSE
- **@Role** - \[user defined values\] - used only if mentioned, users with matching $user-&gt;{role} will have access to api.

### Model Annotation Options

[](#model-annotation-options)

Class Level Annotations

- **@Model** - \[sessionUser\] -
    - *sessionUser* - if used then that model will be used as default Session user, Class must extend app\\model\\AbstractUser

### Tweakings

[](#tweakings)

To build project/clear cache/rebuild annotations - Hit this URL from Browser

```
    http://localhost/?RX_MODE_BUILD=TRUE&RX_MODE_DEBUG=TRUE

```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

3230d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7d3d4bec57d0da0fddafde91796062a0e841e86ba17daecc9e118c188290794c?d=identicon)[lnt](/maintainers/lnt)

---

Top Contributors

[![lnt](https://avatars.githubusercontent.com/u/5462166?v=4)](https://github.com/lnt "lnt (23 commits)")

---

Tags

composerphp

### Embed Badge

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

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

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M192](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

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