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

Bitdatatable Laravel Package

bitstudio-id/bitdatatable

BitDataTable is a Laravel package for building server-side data tables with searchable and sortable columns, pagination, and customizable Blade views. It helps developers add interactive admin tables quickly with minimal frontend setup, a simple PHP API, and no complex JavaScript configuration.

View on GitHub
Deep Wiki
Context7

Getting Started

  • Install the package with Composer, then confirm Laravel auto-discovery registered the service provider. Look first at the package README, config/ file, and any migrations that create search columns or indexes.
  • Verify your environment uses PostgreSQL for the connection the package searches against. The 1.0.9 release specifically fixes Postgres search issues, so reproduce the problem on Postgres before assuming the patch covers your case.
  • Minimal first use case: add search to one Eloquent model, configure the package’s Postgres connection/driver, run any required migrations or index-build command, and test a single-term query before wiring it into a UI.
  • Check the package’s Postgres requirements (version, extensions, full-text configuration). Run php artisan config:clear after changing search config.
  • Start by testing the query shape that was failing before 1.0.9 — whether that is full-text search, ILIKE matching, ranked results, or paginated search — and compare results before and after the upgrade.

Implementation Patterns

  • Integrate search through a model trait or scope if provided, but keep searchable columns explicit. Avoid searching * unless the package optimizes for it.
  • Wrap package search calls in a repository or service class so you can add tenant, status, and publication filters before pagination. This also makes it easier to swap drivers later.
  • If the package maintains search indexes, treat index building as part of deployment: run the package’s index command after imports/seeds and schedule incremental updates if supported.
  • Use Postgres-native search features where the package exposes them, such as full-text search or tsvector-backed ranking. Test against a real Postgres instance rather than SQLite.
  • For UI search, debounce input, paginate results, and handle empty states. If the package provides highlighting or ranking, use it rather than reimplementing result formatting.
  • In CI, run the search test suite against a Postgres service container. This is especially important after the 1.0.9 Postgres search fix.

Gotchas and Tips

  • SQLite and MySQL behave differently from Postgres for search. A passing local SQLite test does not guarantee Postgres search works, especially for case sensitivity, full-text parsing, and ranking.
  • 1.0.9 is a patch release; do not expect new APIs. After upgrading, clear config caches and re-run any search index build if the fix touches indexing behavior.
  • Watch for Postgres-specific issues: ILIKE vs LIKE, collation differences, to_tsvector language configuration, and malformed tsquery input.
  • Full-text indexes and search-column migrations can lock large tables. Plan index creation carefully in production.
  • Stale search results usually mean index updates are not running. Check queue workers, model event listeners, and scheduled index commands.
  • Debug by logging generated SQL with DB::listen or toSql(). Postgres search errors often come from invalid search syntax or missing indexes rather than the package itself.
  • Use extension points such as custom drivers, grammars, result formatters, or model searchable-array methods instead of forking the 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.
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core