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
Nova Table Card

Nova Table Card Laravel Package

whitespacecode/nova-table-card

Nova Table Card adds a flexible table card to Laravel Nova dashboards, letting you display custom rows and columns from any data source. Configure headers, values, and formatting to build compact, readable summaries without leaving Nova.

View on GitHub
Deep Wiki
Context7

Nova table card. Show your latest data (orders, posts,...) as card or data you prefer.

Frequently asked questions about Nova Table Card
What is whitespacecode/nova-table-card used for?
It is a Laravel Nova card that renders tabular data as a compact card on a Nova dashboard or resource detail screen. You define the columns, labels and formatting yourself, and the card displays rows from an Eloquent model, query builder or plain array. Typical uses are latest orders, recent posts, open tickets or any short read-only summary you want visible without leaving Nova. It is a presentation layer only and adds no datastore, queue or migration.
How do I install whitespacecode/nova-table-card?
Install it with Composer (composer require whitespacecode/nova-table-card), then create or extend a card class and register it in your NovaServiceProvider for the dashboard, or attach it to a resource's detail screen. You then define the query or array source plus the columns and labels to render. The whole integration is a handful of PHP classes and typically takes under an engineer-day for a developer already familiar with Nova. Laravel Nova must already be installed, since the package is a card for Nova and does nothing outside it.
Does nova-table-card support Laravel Nova 5?
Yes. Version 1.1.0, released 2024-12-16, is a compatibility release that adds Laravel Nova 5 support. Because it is a minor version bump and not a major one, Nova 4 is presumably still supported, but that is an inference from the changelog rather than a published support matrix. Read the Composer constraints in the package before committing to a Nova version.
How do I show the latest orders or posts on a Nova dashboard with this card?
Point the card at your model query, sort it descending on the timestamp column and apply a row limit so the card stays compact. Then declare the columns you want shown, such as order number, customer and total, with labels and any formatting you need. Register the card in NovaServiceProvider's dashboard cards so it appears on the main dashboard. The same card class can also be placed on a resource detail screen.
Can I format column values with callbacks in nova-table-card?
Yes. Column definitions accept formatting callbacks, so you can transform raw values into currency, dates, status labels or links before they are rendered. This keeps the query simple and pushes presentation logic into the card definition. It also means the displayed row data is whatever your callback returns, so keep the transformations deterministic and cheap to run.
Is whitespacecode/nova-table-card safe to use in production?
For an internal, read-only admin widget it is a reasonable fit, since the blast radius is limited to the Nova panel and rollback is a composer remove. The main concern is authorization scoping: a dashboard card runs a resource query outside Nova's normal index request lifecycle, so you must confirm it honours authorizedToViewAny and any index-query scoping hooks. If it does not, a user who can see the dashboard but not the resource could see rows they should not. Treat that as a launch blocker and verify it with an explicit negative test rather than assuming the card is safe.
How should I test that the nova-table-card respects Nova authorization?
Write a negative test: create a user who can view the Nova dashboard but is not authorized to view the underlying resource, load the dashboard as that user and assert the card renders no rows. This matters because the failure mode is silent, the query succeeds and the card renders correctly, so there is no error to catch it. Also test with real resource policies rather than permissive defaults. A green test here is the only reliable evidence the card respects Nova's scoping.
How does nova-table-card compare to building a custom Nova card myself?
A hand-rolled Nova card means writing a Vue component, wiring an asset build pipeline, publishing assets and maintaining all of it against every Nova major release. That is realistically a two-week block plus recurring upkeep. This package is a thin wrapper over Nova's own card and resource abstractions, so first card is typically under an engineer-day with no new runtime component. The delta between those two efforts is the package's entire value proposition.
Is whitespacecode/nova-table-card actively maintained?
It is a single-maintainer package with a small audience, around ten GitHub stars and no visible CI matrix or support policy. The only recent activity signal is the 1.0.5 to 1.1.0 release in December 2024, which added Nova 5 support. That level of maintenance is acceptable for an internal read-only widget but not for customer-facing, revenue-critical or audited surfaces. If you adopt it, record the bus-factor risk with a named owner.
What breaks when Laravel Nova is upgraded with this card installed?
The realistic failure is on the front end: Nova cards ship compiled assets, so a Nova point release that changes its asset contract can leave the card blank or unstyled. Because the assets are pre-built you get little internal debugging visibility, which tends to produce vague support tickets rather than a clear error. Add a visual check of the card to your Nova upgrade checklist, alongside confirming the package's Composer constraints allow the new Nova major. Treat the card as a follower in your Nova upgrade epic, not a milestone.
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.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections