📖 README

LaraSchema

A modern, visual database schema designer for Laravel — build your database visually, generate production-ready code.

LaraSchema picks up where the now-defunct LaravelSD left off — a modern visual schema designer built natively for the Laravel ecosystem. Design your database with drag-and-drop, define Eloquent relationships visually, and export production-ready migration files.


What It Does

  • Visual Canvas — Drag-and-drop table design on an infinite SVG canvas with zoom and pan
  • Column Editor — Define columns with all 30+ Laravel migration types, modifiers, and indexes
  • Relationship Drawing — Click-to-connect tables with automatic FK column creation and cardinality indicators
  • Complete Code Generation — Export production-ready Laravel code:
    • Migrations — All column types, foreign keys, pivot tables
    • Models — Eloquent models with relationships, $fillable, casts(), traits
    • Factories — Intelligent Faker methods, state management, foreign key handling
    • Seeders — Dependency-ordered seeding with realistic data
  • Category-Based Preview — Browse generated code by type (Migrations, Models, Factories, Seeders)

Quick Start (Development)

git clone <repo-url> LaraSchema
cd LaraSchema
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
npm install && npm run dev
php artisan serve

Visit http://localhost:8000/laraschema to start designing.


Tech Stack

Layer Technology
Backend Laravel 12
UI Components Livewire 4
Canvas Interactivity Alpine.js + SVG
Styling Tailwind CSS 4
Testing Pest PHP

Project Structure

LaraSchema/
├── packages/laraschema/     <- Core Laravel package
│   ├── src/                  <- PHP: models, components, generators, jobs
│   ├── resources/views/      <- Blade + Alpine.js views
│   ├── config/               <- Package configuration
│   ├── database/migrations/  <- 8 core schema tables
│   ├── templates/            <- Base Laravel project template for ZIP export
│   └── routes/               <- Package routes
├── app/                      <- Host Laravel app (SaaS layer, admin panel)
├── demo/                     <- Sample exported project for reference
├── docs/                     <- Project documentation
├── marketing/                <- Landing page assets
└── README.md

Documentation

Document Description
Project Overview Vision, problem statement, and competitive landscape
Architecture Tech stack, package-first design, canvas & generator architecture
Database Design All tables, ERD diagram, column types, design decisions
Phase 1 Implementation MVP build plan — Visual canvas + migration export
Roadmap Phase 2-4 plans and feature distribution
Contributing Team conventions, coding standards, workflow
Phase 2 Implementation Code generation — Models, Factories, Seeders
Phase 2.5 Implementation Full Laravel project + Filament admin export
Auth & Guest Plan Breeze login + guest token claiming flow
Filament Resource Improvements Smarter Filament resource generation
Hosting Plan Infrastructure plan for the hosted SaaS
Force-Directed Layout Auto-layout algorithm for the canvas
Build Log Step-by-step record of every build action and decision

Current Status

Phase 2.5 (Full Project Export + Filament Admin) — ✅ Complete

LaraSchema now generates a complete, runnable Laravel + Filament project from a visual design:

  • ✅ Phase 1: Visual canvas + migration export
  • ✅ Phase 2: Model, Factory, and Seeder generators
  • ✅ Phase 2.5: Full Laravel + Filament project ZIP export with browser setup wizard
  • 🛠 In progress (admin-panel branch): Filament admin panel, queued export jobs with health indicator, code preview, search/filter/disk usage in the Exports view, and a feedback widget

See Phase 2.5 Implementation for details.

What's Next: Live hosting (see 12), auth + guest flow (see 10).


© LaraSchema. All rights reserved.

Loading...