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

Sortable Columns Laravel Package

zikula/sortable-columns

zikula/sortable-columns adds reusable sortable column support to Zikula tables, helping developers define sortable headers, generate sort links, and keep column ordering consistent across modules with minimal configuration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for table UX: SortableColumns is a thin helper for rendering clickable column headers that toggle sort direction and construct the appropriate URLs/query state. It is a reference implementation of the pattern, not a platform — so it informs a decision to build in-house rather than a decision to adopt a dependency.
  • Feature scoping for admin/list views: Useful when writing requirements for any data table (admin index pages, report listings, search results). It surfaces the concrete concerns a sortable header must handle: current sort column, current direction, toggle-to-opposite behavior, visual direction indicator, and URL/query-string state that survives pagination and filtering.
  • Acceptance criteria: Gives you a checklist for definition of done — default sort, ascending/descending toggle, indicator icon, preserved filters, and consistent behavior across pages.
  • Roadmap input for legacy Zikula work: If any part of the portfolio still runs Zikula modules, this tells you what the existing table-sorting convention looks like, which matters for migration sequencing and parity requirements.
  • Reference for Laravel-side design: For Laravel teams, the value is conceptual — you would implement the same behavior with a Blade component or view helper and the query builder, not by importing this package.

When to Consider This Package

  • You maintain a Zikula module with data tables and want a small, dependency-light helper to standardize header sorting.
  • You are porting or documenting an existing Zikula module and need to reproduce its sorting behavior faithfully.
  • You want a worked example of the pattern to crib requirements and edge cases from before writing your own.

Look elsewhere when:

  • You are on Laravel. This is a Zikula component, not a Laravel package — there is no service provider, no Laravel integration, and no Composer ecosystem fit. Roll your own Blade component or use your stack's data-table tooling (Livewire, Filament, Inertia tables, or a maintained datatable package).
  • You need maintenance guarantees. The project is archived, last released 2020-01-21, has 1 star and 0 dependents. There is no upstream support, no security patching, and no community to escalate to. Treat it as read-only reference.
  • You need more than single-column sorting. Advanced needs — multi-column sort, sort persistence across sessions, server-side sorting with pagination, accessibility (aria-sort), or sorting on computed/joined columns — are almost certainly out of scope and would require custom work regardless.
  • You need modern PHP/framework compatibility guarantees. Verify against your PHP version before assuming it runs; an archived 2020 component is unlikely to be tested against current runtimes.

How to Pitch It (Stakeholders)

One-line summary: A small, archived Zikula helper for clickable sortable column headers — valuable as a design reference for our table UX, not as a dependency.

To executives: This does not change our build-vs-buy position or add risk to the roadmap. It is a single-purpose UI helper from a legacy CMS ecosystem, unmaintained since 2020, with essentially no adoption. We should not take it on as a dependency. Its only value is as a concrete spec for how sortable table headers should behave, which lets us write tighter requirements for our own admin and reporting screens and avoid re-litigating the UX in review.

To engineering: Don't add this to composer.json — it's a Zikula component with no Laravel integration and no maintainer. Instead, use it as a checklist: current sort column, current direction, toggle behavior, visual indicator, and query-string state preserved through filters and pagination. The equivalent in our stack is roughly a Blade component plus a small query-scope helper or a maintained table package. Estimated effort to replicate the behavior properly, with tests and accessibility, is small — days, not weeks — and gives us something we can actually maintain. Recommended next step: capture the behavior as acceptance criteria in the table feature ticket and close out evaluation.

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