Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Artisan Schematics Laravel Package

saher/artisan-schematics

View on GitHub
Deep Wiki
Context7
v1.1.0

Date: 2025-08-10

πŸš€ New Features & Enhancements

  • Added support for Laravel versions 9, 10, 11, and 12 to cover a wider range of projects.
  • Updated PHP requirement to support PHP 8.0 and above, ensuring flexibility across development environments.
  • Expanded compatibility for symfony/finder to versions 5.x and 6.x.
  • Improved composer dependencies for better stability and broader support.
  • Maintained backward compatibility to ensure smooth upgrades.

πŸ“¦ Installation

To install or upgrade to this version, simply run:

composer require saher/artisan-schematics --dev

Composer will automatically install the latest stable version (v1.1.0).


πŸ“ Additional Notes

  • If upgrading from an older version, it’s recommended to run:

    composer update saher/artisan-schematics
    
  • For any issues, feel free to open an issue or contribute via pull requests.


Thank you for using Artisan Schematics! We’re committed to continuously improving your development experience.

v1.0.1

Release v1.0.1 - First Stable Release πŸš€

We are excited to announce the first stable release of artisan-schematics! This release marks a major milestone, providing a powerful, extensible, and professional Laravel package to export your Eloquent models and PHP enums to multiple languages with full type safety.


✨ Features

  • Multi-language support: Export model definitions to TypeScript, Dart, Kotlin, and Swift (with the ability to add more languages).
  • Deep Eloquent relationship support: Handles all relationship types, including hasOne, hasMany, belongsTo, belongsToMany, morphTo, morphMany, hasOneThrough, and more.
  • Enum and custom cast detection: Automatically detects and exports PHP backed enums and custom cast types.
  • Recursive dependency resolution: Ensures all referenced models and enums are included without missing dependencies.
  • Configurable output paths: Customize output directories and enable/disable specific languages via the configuration.
  • Zero manual require/include: Fully autoloaded and recursive analysis with no manual file inclusion needed.
  • Comprehensive test coverage: Battle-tested with a full test suite across all features.
  • Extensible architecture: Easily add your own generators by implementing GeneratorContract and registering them.

πŸ› οΈ Installation

composer require saher/artisan-schematics --dev

Publish the configuration file:

php artisan vendor:publish --provider="Saher\ArtisanSchematics\ArtisanSchematicsServiceProvider"

Edit config/schematics.php to customize your output.


πŸš€ Usage

Export all models and enums:

php artisan schematics:export

Or specify custom paths:

php artisan schematics:export --paths=app/Models,app/Enums

πŸ“‚ Output Structure

Generated files will be placed in language-specific folders by default:

  • TypeScript: resource/ts/schemas
  • Dart: tests/output/dart
  • Kotlin: tests/output/kotlin
  • Swift: tests/output/swift

πŸ§ͺ Testing

Run the test suite to ensure everything works as expected:

./vendor/bin/pest

🀝 Contributing

We welcome contributions! Feel free to open issues or submit pull requests to improve artisan-schematics.


πŸ“„ License

This package is licensed under the [MIT License](LICENSE).


Thank you for using artisan-schematics! For more details, visit the [GitHub Repository](https://github.com/Qaidsaher/artisan-schematics) or the [Packagist page](https://packagist.org/packages/saher/artisan-schematics).

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor