Weave 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
Zodiac Bundle

Zodiac Bundle Laravel Package

lunetics/zodiac-bundle

Lunetics ZodiacBundle is a Symfony bundle that adds zodiac sign support to PHP applications, calculating signs from dates and providing services and template helpers for displaying zodiac information.

View on GitHub
Deep Wiki
Context7

Symfony2 Bundle which adds Twig Filters and Twig Methods to retrieve the zodiac of a given date.

Frequently asked questions about Zodiac Bundle
Is lunetics/zodiac-bundle compatible with Laravel?
No. lunetics/zodiac-bundle is a Symfony2 bundle built around a Bundle class, a DI extension, YAML/XML service definitions, and a Twig extension, while Laravel uses service providers and Blade. None of its framework-facing code works in Laravel, so there is no composer require path to a working Laravel feature.
Can I install lunetics/zodiac-bundle in a Laravel 10 or 11 application?
Realistically no. Its Composer constraints almost certainly pin symfony/* to ^2.x and twig/twig to ~1.x, which hard-conflict with Laravel 10 and 11 dependencies on modern Symfony components. Composer resolution will likely fail before any code-level issue appears, and composer why-not will show the conflict quickly.
What does lunetics/zodiac-bundle actually do?
It calculates a person's Western zodiac sign from a birth date and exposes the result through a Symfony service and a Twig extension. The reusable payload is essentially a 12-row cusp table plus about a dozen range comparisons. The rest is Symfony and Twig integration glue.
How do I calculate a zodiac sign in Laravel without this bundle?
Build a small first-party ZodiacSign enum or value object with name, slug, symbol, and start/end month-day values. Add a ZodiacResolver implementation, bind it in a service provider, and surface it through a Blade directive or component. Resolve against an explicit local date using CarbonImmutable rather than a UTC timestamp.
Does lunetics/zodiac-bundle support modern Symfony or Twig versions?
No. Symfony 2.x is long past end of life, and the Twig 1.x APIs it relies on, such as Twig_Extension and Twig_SimpleFilter, were removed in Twig 2 and 3. The extension class will fatal on any modern stack, and TwigBridge does not rescue it.
What are the zodiac cusp boundary risks in this package?
The package does not document which boundary table or tradition it uses, and zodiac cusp dates vary by source. It also appears to ignore user timezones and sign-name localization. You need an explicit product decision on boundaries, local-date handling, and translated sign names before relying on any table.
Is lunetics/zodiac-bundle maintained and safe for production?
It has very low adoption, roughly 7 stars and 0 dependents, so there is no upstream pressure, CVE response, or bus factor. Adopting it as-is creates a permanent dependency-policy exception with no leverage. The safer path is to treat it as a reference spec and boundary-case checklist, not a production dependency.
How should I handle timezones and localization for zodiac signs in Laravel?
Resolve the sign from the user's local birth date, not from a UTC timestamp, and use CarbonImmutable to avoid mutation bugs. Store or pass localized sign names if your product supports multiple languages, because hardcoded English is a silent UX failure. The original bundle offers no help with either concern.
Should I persist zodiac signs or compute them on read in Laravel?
Prefer computing the sign on read unless you have a strong query or reporting requirement. Persisting it turns boundary definitions and any future table changes into a migration hazard. Keep the resolver deterministic and testable so recomputation stays cheap.
What is the best alternative to lunetics/zodiac-bundle for Laravel?
There is no meaningful Laravel package alternative in this bundle; the best path is a first-party enum plus resolver of roughly 40 to 80 lines including tests. You can vendor the cusp table with attribution if the license permits, but drop every line of Symfony and Twig glue. That is cheaper than vetting and owning an abandoned dependency.
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.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib