Download the PHP package dive-be/laravel-snowflake without Composer
On this page you can find all versions of the php package dive-be/laravel-snowflake. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-snowflake
❄️ Generate IDs using Twitter Snowflake
This package assists you in creating Snowflake identifiers for your Eloquent models.
It is a Laravel wrapper for godruoyi/php-snowflake.
What problem does this package solve?
Please refer to the original library for more information regarding Snowflakes.
Installation
You can install the package via composer:
You can publish the config file with:
This is the contents of the published config file:
Usage
⚠️ Use a high-performing cache driver such as
Redis
to ensure rapid ID generation.❗️ Do not use an ephemeral cache driver such as
array
in production!
Migrations
- Use
snowflake
to define a Snowflake column - Use
foreignSnowflake
to reference another Snowflake (alias forforeignId
)
Models
Use the HasSnowflake
trait in your Eloquent models:
Manual generation
You have a couple of options if you'd like to generate your Snowflake identifiers manually:
📣 Note on JavaScript compatibility
While JavaScript itself actually supports BigInt
s,
the JSON
standard does not.
Therefore, to make sure the identifiers are not truncated while deserializing them on the front-end using JSON.parse
and alike,
the package will automatically cast the models' id
field to string
.
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits
- Muhammed Sari
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-snowflake with dependencies
godruoyi/php-snowflake Version ^3.0
illuminate/cache Version ^11.0
illuminate/contracts Version ^11.0
illuminate/database Version ^11.0
illuminate/support Version ^11.0