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
Ti Theme Toolkit

Ti Theme Toolkit Laravel Package

tipowerup/ti-theme-toolkit

Shared PHP and frontend infrastructure for TastyIgniter themes: extend one service provider to inherit color palettes, form widgets, Livewire auth/contact/newsletter components, dark mode, and a curated field schema.

View on GitHub
Deep Wiki
Context7

Shared infrastructure package for TiPowerUp TastyIgniter themes — AbstractThemeServiceProvider, ColorHelper, BannerManager, BaseSchema, Tailwind/Vite presets, dark-mode store.

Frequently asked questions about Ti Theme Toolkit
What is tipowerup/ti-theme-toolkit and what problem does it solve?
It is a shared PHP and frontend infrastructure package for TastyIgniter themes built on Laravel. Extending AbstractThemeServiceProvider lets a child theme inherit color palettes, form widgets, Livewire auth, contact, and newsletter components, dark mode, routes, translations, and view-composer payloads instead of rebuilding them. The vendor's pitch is collapsing a new theme to roughly 50 lines of PHP plus a Tailwind and Vite config. It is not a general-purpose library; it is the extracted backbone of one vendor's TastyIgniter theme portfolio.
How do I install ti-theme-toolkit with Composer and npm?
Run composer require tipowerup/ti-theme-toolkit for the PHP side, then npm install --save-dev @tipowerup/ti-theme-toolkit for the frontend presets. For monorepo or local development, install the npm package with the file: protocol, for example file:../ti-theme-toolkit. After activation you must run the igniter:theme-vendor-publish asset publish step, and repeat it in CI. The Composer install is a single package, but the JS toolchain is a real build dependency that changes your deployment pipeline.
Which Laravel, TastyIgniter, Livewire, and PHP versions are supported?
The README states PHP 8.2+, TastyIgniter 4.0+, Livewire 3.0+, Node 18+, Tailwind CSS 3.0+, Vite 5.0+, and Alpine.js 3.0+. The technical evaluation warns those version claims drift from the actual Tailwind v4 and @tailwindcss/vite reality in the codebase, so treat package.json and the changelogs as the real supported matrix. Verify the exact Tailwind and Vite versions before pinning the package in a project.
How do I create a custom TastyIgniter theme with AbstractThemeServiceProvider?
Create a ServiceProvider that extends the toolkit's AbstractThemeServiceProvider and override the template methods: themeCode(), phpNamespace(), viewsPath(), langPath(), livewirePath(), and bladeComponentsPath(). Every other integration point, including views, translations, Livewire registration, Blade components, routes, and error views, hangs off those methods. The abstract provider is the single integration seam the rest of the package is built around, which is why the design is sound where it counts.
Does ti-theme-toolkit still ship tailwind-preset.js and resources/src/css/tokens.css?
No. Changelog 0.3.0 explicitly removed tailwind-preset.js and resources/src/css/tokens.css as superseded by theme.css, yet the README quickstart still documents both. A developer following the README verbatim will produce a broken build, so read the source and changelog as the specification instead. This documentation drift is the package's most load-bearing technical risk.
How does the color palette and dark mode system work in ti-theme-toolkit?
The theming chain runs ThemePayloadResolver to ColorHelper to buildBrandStyle(), which emits CSS custom properties that Tailwind utilities consume. That server-rendered model means an admin can change colors without a per-color build step, which is the right trade for an admin-editable storefront. Dark mode is handled by a dedicated store in the toolkit rather than being reimplemented in each theme.
Can I reuse the Livewire auth, contact, and newsletter components across themes?
Yes, that is core to the design. The toolkit owns the Livewire business logic while the theme owns the Blade views, with a last-writer-wins override so themes customize presentation without forking auth flows. This inversion is deliberate: shared behavior in the toolkit, presentation in the child theme. It is the main reason the abstraction pays off across a multi-theme portfolio.
Is ti-theme-toolkit production-ready, and what risks should I watch?
It is pre-1.0 and has already made breaking changes in minor releases, including swapping its entire Tailwind integration strategy in 0.3.0, so pin exact versions and budget upgrade work. The package mutates global Laravel and TastyIgniter config, including view.paths, asset publishing, menu-item listeners, container bindings, and Livewire registration, which creates last-booted-wins failure classes such as the 0.6.2 error-view bug. It also carries an in-tree patch for a ti-ext-pages issue marked TODO remove once upstream #21 merges, which is a silent conflict risk on TastyIgniter upgrades. Adopt it only if TastyIgniter 4.x is a fixed platform decision for the next 12 to 18 months.
What is the test coverage of ti-theme-toolkit?
The suite is Pest 4 with testbench and roughly 12 tests. It covers placeholder substitution, listener registration, namespace binding, Livewire registration, and one regression. There are no integration tests for the asset-publish listener, error-view scoping, or color derivation output, so coverage is thin relative to the package's blast radius. Plan on adding your own smoke tests around those areas.
When should I avoid ti-theme-toolkit, and what are the alternatives?
If your roadmap has one TastyIgniter theme, this package is pure overhead; build the theme directly instead. The abstraction only pays for itself at three or more themes, mostly through the field schema, color derivation, and shared auth Livewire components. There is no community safety net here: zero stars, zero dependents, and a single vendor maintaining it, so if your theme roadmap outlives that vendor's interest you inherit the maintenance. Consider forking it in-house and treating it as your own internal package.
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.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log