Download the PHP package solution-forest/filament-goaccess without Composer

On this page you can find all versions of the php package solution-forest/filament-goaccess. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package filament-goaccess

Filament GoAccess

Latest Version on Packagist Tests Total Downloads

A standalone Filament plugin that turns GoAccess web-log analytics into a native, live dashboard inside your admin panel — stat tiles, a traffic chart, a status-code breakdown, and ranked tables for requests, 404s, hosts, referrers, browsers and operating systems.

Instead of embedding GoAccess's own HTML report in an iframe, the plugin parses GoAccess JSON and renders native Filament widgets, so the dashboard matches your panel's theme and dark mode, and stays "live" through Livewire polling — no WebSocket server or reverse-proxy plumbing required.

Screenshots

Light Dark

Stat tiles, a traffic-over-time chart, a status-code doughnut, and ranked tables — all native Filament components that follow your panel's theme. Rendered from the demo app in playground/.


Requirements

PHP ^8.2
Laravel ^11.0 or ^12.0
Filament ^4.0 or ^5.0
GoAccess binary Only for managed mode (install docs)

Installing GoAccess

Only needed for managed mode (skip it for external mode). GoAccess is a single native binary — install it from your OS package manager or goaccess.io/download.

OS / distro Command
Ubuntu / Debian sudo apt install goaccess
Fedora / RHEL / CentOS sudo dnf install goaccess
Alpine apk add goaccess
Arch sudo pacman -S goaccess
macOS (Homebrew) brew install goaccess
Windows via WSL + one of the above, or Chocolatey: choco install goaccess
Docker docker run --rm allinurl/goaccess (image)

The distro packages are often older. For the latest release use the official APT repo or build from source — see goaccess.io/download and the get-started guide.

Verify the install and note the path:


Installation

Publish the config file:

Register the plugin on your panel (e.g. app/Providers/Filament/AdminPanelProvider.php):

A GoAccess page now appears in the navigation (under the Analytics group by default).


Configuration

Everything lives in config/filament-goaccess.php. The most important choice is the mode.

Mode 1 — Managed (recommended)

The plugin runs the goaccess binary for you and writes the JSON that the dashboard reads.

  1. Install GoAccess on the server (apt install goaccess, brew install goaccess, …).
  2. Point a site at your access log(s):

  3. Generate the report — run it once to verify:

  4. Keep it fresh on a schedule (routes/console.php on Laravel 11/12):

    With 'persist' => true (default), GoAccess keeps a cumulative on-disk database (--persist/--restore), so totals survive log rotation without re-parsing the whole log every run.

Mode 2 — External

Some other pipeline (a cron job, a container sidecar, a CI step) produces the JSON; the plugin only reads it.

Example external cron that writes the JSON the dashboard reads:

Multiple sites

Add more entries under sites — a Site dropdown appears automatically in the dashboard toolbar when more than one is configured. Picking a site live-swaps every widget (tiles, charts, tables) to that site's data; the date-range filter applies on top. With a single site the dropdown is hidden.

Generate one site or all:

Other options

Key Default Purpose
log_format COMBINED Any GoAccess predefined format (VCOMBINED, COMMON, W3C, CLOUDFRONT, CADDY, …) or a custom format string.
polling_interval 10s How often widgets re-read the JSON. null disables polling.
default_range 7d Initial dashboard window: today | 7d | 30d | all.
extra_args ['--no-global-config', '--ignore-crawlers'] Extra goaccess args applied to every site (managed mode).
persist true Use GoAccess's cumulative on-disk DB across runs.
navigation group: Analytics Navigation group / sort / icon. Overridable via the plugin (below).

Override navigation per panel:

GeoIP (optional)

Add a MaxMind database via extra_args to enable GoAccess geolocation:


How the date filter works

GoAccess JSON is a pre-aggregated snapshot, so the filter behaves in two layers:


Troubleshooting

Symptom Fix
Widgets say "No data — run goaccess:generate" The json_path file doesn't exist yet. Run the command (managed) or check your pipeline (external).
goaccess: command not found Install the GoAccess binary, or set GOACCESS_BINARY / binary to its absolute path.
Empty / wrong numbers Your log_format doesn't match the log. Try the matching preset (VCOMBINED, CLOUDFRONT, …) or a custom format.
404 tile shows 0 GoAccess 1.11 omits not_found from the general panel; the plugin derives it from the Not Found panel automatically — make sure your log actually has 404s.

Testing / Contributing

The suite is Pest + Orchestra Testbench. Logic, parsing, the filter, and empty-state handling run without any binary; one integration test exercises the real goaccess binary (skipped automatically when it isn't installed).

Docker (real goaccess, no host install)

A ready-made image bundles PHP 8.3 + the goaccess binary, so the managed-mode integration test runs against a real binary without installing anything on your host:

This runs the package test suite, not a full Laravel app. To see the dashboard in a browser, use the demo app in playground/.


Credits

License

The MIT License (MIT). See LICENSE.md.


All versions of filament-goaccess with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
filament/filament Version ^4.0|^5.0
illuminate/contracts Version ^11.0|^12.0|^13.0
spatie/laravel-package-tools Version ^1.16
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package solution-forest/filament-goaccess contains the following files

Loading the files please wait ...