Download the PHP package eyf/laravel-exodus without Composer

On this page you can find all versions of the php package eyf/laravel-exodus. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-exodus

laravel-exodus

Converts YAML to actual Laravel migration files.

Install

Usage

Step 1: Create database/migrations.yaml file

Define a posts table:

Step 2: Make migrations (command)

Run exodus command to translate the yaml file into actual Laravel migration files:

Step 3: migrate as normal

Workflow

Exodus is a DEV package, it is meant to ease / speed up development time.

A normal workflow while DEV'ing could be:

  1. Create migrations.yaml file (Add a posts table)
  2. php artisan exodus
  3. php artisan migrate
  4. Edit migrations.yaml file (Add a users table)
  5. php artisan exodus
  6. php artisan migrate:refresh (--seed)
  7. Edit migrations.yaml file
  8. ... (Repeat)

The exodus.lock file

By default the migration file names won't change between multiple exodus runs.

This is because Exodus keeps track of the initial migration file name in database/exodus.lock (to commit in your repository).

This makes sure git sees the edits in the same migration file throughout the whole DEV.

The force option

Sometimes you may want to bypass the exodus.lock file (For example when you want to change the table order creation).

What happens:

  1. All "old" migration files will be deleted (the ones in current exodus.lock)
  2. New migration files will be generated (with newest date in filename)

Syntax

Column

Any column can be written fluently exactly like in the Laravel migration syntax. In fact Exodus is just a light translator of a "dot notation" array to the actual PHP syntax.

Special column

Special column types are the "sugar" methods provided by Laravel for a better developer experience: id(), timestamps(), softDeletes(), rememberToken(), etc...

Since these column types don't have a column name (name is in the convention), just specify true as their value:

Pivot tables

For generating a pivot table, just use two table names as follow:

This will create the following pivot migration file:

You can even provide more columns to the pivot table as normal:

Phylosophy

This package aims at speedind up development time. It is not meant to be used after you have launched to production. In fact the package does not provide a way to run migrations for adding or removing columns (it used to).

This is by choice.

While DEV'ing you should edit the migrations.yaml file as much as you want and run migrate:refresh (--seed) as often as possible. "This is the way".

By the time you are happy with your Schema, you must have launched in production, and then only you may create normal Laravel migration files for adding or removing column(s) in your tables. This is where the job of this package ends.

TODO: Implement safety guard making sure exodus cannot be run if it detects more migrations files than in exodus.lock.


All versions of laravel-exodus with dependencies

PHP Build Version
Package Version
Requires php Version >=7.4.28
illuminate/support Version ^5.8|~6.0|~7.0|~8.0|~9.0|~10.0
illuminate/filesystem Version ^5.8|~6.0|~7.0|~8.0|~9.0|~10.0
symfony/yaml Version ^5.1|~6.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package eyf/laravel-exodus contains the following files

Loading the files please wait ....