A Flat-File Database Driver for Eloquent


July 16th, 2021


Orbit is a flat-file database driver for Eloquent by Ryan Chandler.

You can think of it as a general-purpose "flat-file CMS for any of your applications." It can be added to any Laravel Model class and allows you to store data in flat files on a disk.

Here's an example from the readme of defining a model for usage with Orbit:

1use Illuminate\Database\Schema\Blueprint;
3class Post extends Model
5 use \Orbit\Concerns\Orbital;
7 public static function schema(Blueprint $table)
8 {
9 $table->string('title');
10 $table->string('slug');
11 $table->timestamp('published_at');
12 }

Orbit is a simple-to-use package that can add flat-file support to any Laravel model class. It allows you to store data in flat files on disk instead of a generic SQL database. Think of it as a general-purpose flat-file CMS for any of your applications!

Getting started is straightforward: given the above model, here's what the flat files look like in a project:

Screenshot of an Orbit flat file

The screenshot is an example of the markdown driver; in Orbit it supports the following drivers out of the box:

  • md -> Orbit\Drivers\Markdown
  • json -> Orbit\Drivers\Json
  • yaml -> Orbit\Drivers\Yaml
  • md_json -> Orbit\Drivers\MarkdownJson

You are free to define custom drivers using the given interface contained in the Orbit package.

Learn More

You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Also, Ryan has recently started a 60 second Laravel series on YouTube to teach you things about Laravel in 60 seconds or less. Check out the first one here:

Filed in:

Paul Redmond

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.