承接 cedric-lekene/laravel-migration-ai 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

cedric-lekene/laravel-migration-ai

最新稳定版本:1.1.0

Composer 安装命令:

composer require cedric-lekene/laravel-migration-ai

包简介

A Laravel package that uses AI to generate database migrations from plain-language descriptions, simplifying the migration creation process

README 文档

README

A Laravel package that uses AI to generate database migrations from plain-language descriptions, simplifying the migration creation process.

Demo GIF

Table of Contents

Installation

  1. Install the package via Composer:

    Run the following command in your Laravel project:

    composer require --dev cedric-lekene/laravel-migration-ai
  2. Register the Service Provider (if not using auto-discovery):

    If your Laravel version does not support package auto-discovery, you will need to register the service provider in your config/app.php file:

    'providers' => [
        // Other Service Providers
    
        CedricLekene\\LaravelMigrationAI\\LaravelMigrationAIServiceProvider::class,
    ],

Configuration

To use the package, you need to set up your environment variables. Add the following keys to your .env file:

GEMINI_API_KEY=your_gemini_api_key
GEMINI_MODEL=gemini-1.5-flash

Environment Variables

  • GEMINI_API_KEY: Your API key for Gemini.
  • GEMINI_MODEL: (Optional) Specify the model used for Gemini (default: gemini-1.5-flash).

Note: GEMINI_API_KEY must be defined in your environment variables.

Usage

Once the package is installed and configured, you can generate a migration file using the command below.

Commands

  • make:migration-ai: Generate a migration file from a plain-language description.

Example Command

php artisan make:migration-ai migration_name description="description about the content of migration"

Example

php artisan make:migration-ai add_fields_in_users_table description=" Add a new column named 'age'(integer|nullable|default value 0) , 'sexe'(string|nullable), 'phone'(string|nullable)"

Real Output

This command will create a migration file similar to the following:

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::table('users', function (Blueprint $table) {
            $table->integer('age')->nullable()->default(0);
            $table->string('sexe')->nullable();
            $table->string('phone')->nullable();
			
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropColumn('age');
            $table->dropColumn('sexe');
            $table->dropColumn('phone');
			
        });
    }
}

This command will create a migration file based on the provided description.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please read the CONTRIBUTING.md for details on how to contribute to this project.

统计信息

  • 总下载量: 13
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-12-01