Skip to content

sk335577/BharatPHP

Repository files navigation

BharatPHP MVC Framework

BharatPHP is a lightweight Made In India PHP Framework used to develop web applications. Live demo here.

Table of Contents

General Information

  • BharatPHP is a web framework built in PHP programming language.
  • BharatPHP is a developer friendly framework which provides more control to a developer.
  • BharatPHP provides a MVC approach to build web based applications.

Technologies Used

  • PHP 8.0
  • Composer
  • HTML
  • CSS
  • Javascript/Jquery

Features

Here are the framework features

  • MVC
  • Lightweight
  • Dynamic Routing
  • Services Manager
  • Events Manager
  • Translations Manager
  • Database Utilities: A mysql wrapper library added to generate quick sql queries
  • Configuration Manager: To access configuration from anywhere in project life cycle
  • Simple Array Language Translations: Add any numbers of languages
  • Simple .phtml templating engine, but can be used with any templating engine like twig, smarty etc
  • Extendable: Can be use to develop large applications
  • A Demo Attached: A portfolio website(with bootstrap css framework) will be generated
  • Use any php package from packagist.org by using composer

Screenshots

Example screenshot

Setup

What are the project requirements/dependencies? Where are they listed? A requirements.txt or a Pipfile.lock file perhaps? Where is it located?

Proceed to describe how to install / setup one's local environment / get started with the project.

Tables to create if database session and caching via database is used

DROP TABLE IF EXISTS sessions; CREATE TABLE IF NOT EXISTS sessions ( id varchar(40) COLLATE utf8mb4_unicode_520_ci NOT NULL, last_activity bigint(20) UNSIGNED NOT NULL, data text COLLATE utf8mb4_unicode_520_ci NOT NULL, PRIMARY KEY ('id') ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

Schema::create('cache', function (Blueprint $table) { 15 $table->string('key')->primary(); 16 $table->mediumText('value'); 17 $table->integer('expiration'); 18 }); 19 20 Schema::create('cache_locks', function (Blueprint $table) { 21 $table->string('key')->primary(); 22 $table->string('owner'); 23 $table->integer('expiration'); 24 });

Usage

How does one go about using it? Provide various use cases and code examples here.

write-your-code-here

Project Status

Project is: in progress

Room for Improvement

Room for improvement:

  • Documentation
  • A sample application with admin panel

To do:

  • Caching
  • CLI support

Acknowledgements

The project is based and inspired by the following frameworks

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

Contact

Created by @Sandeep Kumar - feel free to contact me!

License

MIT

About

A Made In India MVC PHP Framework.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages