shipwelldev/cornerstone
Cornerstone is a foundational Laravel package that bundles reusable building blocks, conventions, and scaffolding to help you start and structure applications faster. It aims to cut boilerplate so you can focus on your app's domain logic.
composer require shipwelldev/cornerstone.php artisan vendor:publish --tag=cornerstone-config and php artisan vendor:publish --tag=cornerstone-migrations.App\Models\User model to use the snowflake ID trait (e.g., HasSnowflakeIds) and ensure its primary key is a bigInteger (not auto-increment). v0.5.0 makes this mandatory for the default User model.php artisan cornerstone:model Post. The generated model will include snowflake ID support and comply with architecture coverage.php artisan test --group=architecture (or the package’s dedicated command) to verify all models use snowflake identifiers.First use case: scaffold a new domain model with a snowflake primary key and immediately validate that your entire application (including User) passes the architecture rules.
unsignedBigInteger (or bigInteger if signed). Then run architecture tests to catch any misses.unsignedBigInteger for foreign keys that reference snowflake IDs. Update migrations accordingly.php artisan vendor:publish --tag=cornerstone-stubs) to inject project-specific base classes, traits, or naming conventions into generated models.id() column with $table->bigInteger('id')->primary() and configure the model accordingly.User table to snowflakes is non-trivial. For production data, plan a migration that maps old IDs to new snowflake IDs, or start with a fresh database in development.config/cornerstone.php and set environment-specific values to avoid collisions across multiple app instances.php artisan test --group=architecture -v) to see exactly which models violate the snowflake requirement. Also verify that your User model’s $keyType and $incrementing properties are set correctly ('int' and false).How can I help you explore Laravel packages today?