The lightweight PHP database framework to accelerate development

Fund package maintenance!
Open Collective

Installs: 571 955

Dependents: 200

Suggesters: 5

Security: 0

Stars: 4 315

Watchers: 225

Forks: 1 126

Open Issues: 23


v1.7.10 2020-02-11 08:20 UTC



Total Downloads Latest Stable Version License Backers on Open Collective Sponsors on Open Collective

The lightweight PHP database framework to accelerate development


  • Lightweight - Less than 100 KB, portable with only one file

  • Easy - Extremely easy to learn and use, friendly construction

  • Powerful - Supports various common and complex SQL queries, data mapping, and prevent SQL injection

  • Compatible - Supports all SQL databases, including MySQL, MSSQL, SQLite, MariaDB, PostgreSQL, Sybase, Oracle and more

  • Friendly - Works well with every PHP frameworks, like Laravel, Codeigniter, Yii, Slim, and framework which supports singleton extension or composer

  • Free - Under MIT license, you can use it anywhere whatever you want


PHP 5.4+ and PDO extension installed, recommend PHP 7.0+

Get Started

Install via composer

Add Medoo to composer.json configuration file.

$ composer require catfan/medoo

And update the composer

$ composer update
// If you installed via composer, just use this code to require autoloader on the top of your projects.
require 'vendor/autoload.php';

// Using Medoo namespace
use Medoo\Medoo;

// Initialize
$database = new Medoo([
    'database_type' => 'mysql',
    'database_name' => 'name',
    'server' => 'localhost',
    'username' => 'your_username',
    'password' => 'your_password'

// Enjoy
$database->insert('account', [
    'user_name' => 'foo',
    'email' => ''

$data = $database->select('account', [
], [
    'user_id' => 50

echo json_encode($data);

// [
//     {
//         "user_name" : "foo",
//         "email" : "",
//     }
// ]

Contribution Guides

For most of time, Medoo is using develop branch for adding feature and fixing bug, and the branch will be merged into master branch while releasing a public version. For contribution, submit your code to the develop branch, and start a pull request into it.

On develop branch, each commits are started with [fix], [feature] or [update] tag to indicate the change.

Keep it simple and keep it clear.


Medoo is under the MIT license.