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

Jetax Laravel Package

jksantos/jetax

Jetax é um design system opinativo para a TALL Stack em PHP 8.4+ e Laravel 12+: rode o instalador e tenha sidebar, topbar, workspace e 60+ componentes Blade/Livewire prontos, com dark mode nativo, tipografia Manrope/Inter e tudo publicável para customização.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. Jetax is a Blade/Livewire component library plus a Tailwind v4 token layer — not a service-layer package. It touches the presentation tier only, which is the lowest-risk place to adopt third-party code: no database migrations, no queue workers, no auth surface, no runtime dependency in request paths beyond view rendering. It ships a ServiceProvider with package discovery, a jetax:install command, four vendor:publish groups, a jetax:check drift detector for published views, and a jetax_config() helper. That command surface signals the author has thought about the two hardest problems in Blade component packages: CSS build coupling and published-view drift.

Integration feasibility. Mechanically straightforward, economically narrow. The hard requirement intersection is PHP 8.4 + Laravel 12 + Livewire 4 + Tailwind 4 + Alpine 3. As of writing, Livewire 4 is very new; mandating it forces the host application onto an early Livewire major as a precondition for a UI kit. That inverts the normal risk calculus — you would be accepting framework-upgrade risk in order to adopt a zero-adoption design system. Consumption also requires the host's Vite/Tailwind pipeline to compile the package's source CSS (@import "../../vendor/jksantos/jetax/resources/css/jetax.css" plus @source "../../vendor/jksantos/jetax/resources/views"), so the package is build-time coupled to the host toolchain rather than shipping precompiled, versioned artifacts.

Technical risk.

  • Adoption risk (highest). 0 stars, 0 dependents, single named maintainer, no visible community, no security policy, no English documentation. There is no external signal of production use anywhere.
  • Semver discipline. Changelog 1.1.0, a minor release, removed 42 CSS tokens and redesigned dark mode, cards, and topbar. In a design system, visual and token changes are breaking changes. Treat minor bumps as potentially visually breaking.
  • Demonstrated defect leakage in the flagship component. 1.1.1 and 1.1.2 are both DataTable fixes: perPage vs per_page (silently non-functional page-size selector), a default of 15 that matched none of the selector's options, and a missing withPath()/appends() pair causing duplicated URL segments and 404s. Two consecutive patch releases fixing table pagination indicates the most load-bearing component shipped without integration-level verification.
  • Supply/asset chain. Google Fonts (Manrope, Inter) and Material Symbols Outlined are loaded from Google's CDN by design, and the README explicitly declines to bundle them. That is a CSP configuration item, a performance item, and for EU-facing products a data-protection review item. Icon availability becomes an external availability dependency.
  • CSS ordering contract. Google Fonts imports must precede all other imports or the Vite/Tailwind build emits warnings. This is a fragile, undocumented-by-tooling invariant that a future refactor of app.css can silently break.
  • Bundle bloat. @source scans all 60+ component views, so Tailwind emits utilities for components you never use. Expect a larger CSS payload than a hand-rolled equivalent unless you prune.
  • Theme-system collision. Class-strategy dark mode with its own anti-FOUC inline script and localStorage key will conflict with any existing theme provider (Filament, custom toggles, OS-preference logic). Two competing class="dark" writers is a real defect class.

Key questions.

  1. Is Livewire 4 GA and stable, or does adopting Jetax force the application onto a pre-stable framework major?
  2. Does the team have a concrete design requirement Jetax satisfies that a headless UI kit or an in-house token sheet would not, within the same budget?
  3. Who is accountable for the package internally if upstream goes quiet — is there a named owner and a fork plan?
  4. Do we have CSP, GDPR, or offline/air-gapped constraints that forbid the Google Fonts/Material Symbols CDN calls?
  5. Is the target surface an internal admin tool (tolerable risk) or a customer-facing product with an accessibility and longevity bar?
  6. Does the existing application already run a design system or theme provider that this would duplicate?
  7. Is 80% PCOV coverage (claimed in the 1.0.0 changelog) actually enforced in CI, and does it include Livewire interaction tests or only render tests?
  8. Are published views required for our customization needs, or do the 1.1.0 extension points (headerClass, footerClass, slots, config tokens) suffice?

Integration Approach

Stack fit. Only pursue if the application is already on, or independently committed to, Laravel 12 + Livewire 4 + Tailwind 4 on PHP 8.4. If Jetax is the reason to upgrade any of those, stop — the dependency direction is wrong. Best-fit target: a greenfield or recently rebuilt internal admin/back-office panel where visual consistency, time-to-first-screen, and dark mode matter, and where the blast radius of a UI regression is a handful of internal users.

Migration path. Do not retrofit an existing UI. Adopt in one of three modes, in increasing commitment:

  • Mode A — evaluation spike. Install into a throwaway Laravel 12 app, build one representative screen (list + filter + form + modal), measure CSS output size, verify dark-mode toggle against OS-preference and a second toggle, and specifically stress the DataTable pagination paths that 1.1.x fixed.
  • Mode B — isolated surface. Use Jetax for a single new, self-contained module rendered under its own layout, leaving the existing shell untouched. Keeps the theme-system collision contained.
  • Mode C — shell adoption. Only after B proves out; migrate layout, sidebar, and topbar. This is where dark-mode and CSS-ordering risk concentrate.

Compatibility. Pin the exact version in composer.json (no caret range) and commit composer.lock. Pin the host's Tailwind version to the same major/minor you validated — because the host compiles Jetax's source CSS, a host-side Tailwind bump is a package upgrade. Verify which Alpine version Livewire 4 bundles; Jetax loads Alpine implicitly via @livewireScripts, so you cannot independently upgrade or downgrade Alpine. Confirm jetax:check runs in CI if you publish views. If you must customize beyond props/slots, prefer a path-repository fork committed into the monorepo over published views — published views are copies that rot, forks are upgrades you control.

Sequencing.

  1. Requirements check: confirm the design brief and accessibility bar, and confirm no CSP/GDPR blocker on Google-hosted fonts and icons (or plan to self-host both before the spike).
  2. Spike in a sandbox (Mode A) with an explicit pass/fail checklist: build success with zero Tailwind warnings, no FOUC on hard reload in dark mode, DataTable pagination and page-size selector correct across pages, icon and font rendering under a production CSP.
  3. Pilot one internal module (Mode B), instrumented for CSS bundle delta and any theme-toggle conflicts.
  4. Gate: only proceed to shell adoption if the pilot produced zero P1 visual defects and the team accepts ownership of a fork.
  5. Production rollout with a documented escape hatch (component-level shim layer so <x-jetax-*> can be swapped without touching feature views).

Operational Impact

Maintenance. This is the dominant cost. A single-maintainer, zero-dependent package effectively means you are adopting a codebase, not a vendor. Budget explicitly for: tracking upstream releases, reviewing every minor for visual breakage (1.1.0 proves minors carry redesigns), re-validating the Tailwind @source path and CSS import ordering after any host toolchain change, and self-hosting fonts/icons if compliance requires it. If you fork, you own merges from upstream forever and lose the ability to composer update — a real but bounded cost for ~60 Blade files. Mitigate structurally: wrap Jetax components behind a thin internal alias layer so replacement is a single-directory change.

Support. No SLA, no support channel, no security disclosure process, no published deprecation policy. Portuguese-only documentation is a genuine ramp-up tax for a non-Portuguese-reading team, and the README documents component names rather than component APIs — props, slots, emitted events, and wire:model semantics must be read out of the Blade source. Assume reverse-engineering effort per component used, and write internal usage docs as you go; that artifact, not the package, becomes your durable asset.

Scaling. Runtime scaling is a non-issue — this is CSS and Blade rendering, and Livewire requests behave like any other Livewire endpoint. The scaling concerns are all build-time and long-term: CSS payload grows with the number of component views scanned, so a large app adopting many components pays a growing stylesheet cost; per-request Livewire round-trips for interactive components (DataTable, modals, toasts) should be reviewed against your existing Livewire performance profile; and organizational scaling is the real ceiling — onboarding new engineers onto an undocumented, single-maintainer, Portuguese-documented design system does not compound well.

Failure modes. Rank by likelihood × impact:

  1. Silent visual regression from an upstream minor — token or dark-mode changes propagate on composer update. Mitigation: exact pins, visual regression snapshots on your key screens, manual changelog review.
  2. Missing styles in production build — @source path breaks under a relocated vendor directory, path-repository install, or Docker multi-stage build where the package isn't present at build time. Mitigation: build-time assertion that a known jetax class is present in the compiled CSS.
  3. Broken pagination/URL state — already observed twice upstream. Mitigation: explicit integration tests on any paginated Jetax surface.
  4. CDN unavailability or CSP block — fonts fail (FOUT) or icons render as literal text (tofu). Mitigation: self-host both; add CSP entries in the same change as adoption.
  5. Theme war — two writers to class="dark" producing flicker or stuck themes. Mitigation: single owner of theme state; delete the other implementation before rollout.
  6. Stale published views — customization frozen at publish time while the package advances underneath. Mitigation: jetax:check in CI, or avoid publishing.
  7. Abandonment — upstream goes quiet mid-migration. Mitigation: fork before you depend, not after.

Ramp-up. Expect roughly a week of engineer time to a confident pilot for a team already fluent in Livewire 3/4 and Tailwind 4, plus additional time for the font/icon self-hosting and CSP work, plus ongoing per-component API discovery given the docs gap. The install path itself is minutes; the validation is the cost. Set the adoption decision accordingly: Jetax is a credible accelerator for an internal, greenfield, TALL-native admin surface where you are willing to own a fork — and a poor trade for anything customer-facing, compliance-constrained, or still below Laravel 12 / Livewire 4, where the mandatory stack upgrade carries more risk than the components remove.

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.
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus