Download the PHP package buzkall/finisterre without Composer

On this page you can find all versions of the php package buzkall/finisterre. 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 finisterre

Finisterre

A Filament plugin that adds a full task-management system to your panel: a Kanban board, task assignments, threaded and schedulable comments, email and SMS notifications, issue reporting from any of your own models, and an in-app settings page. Works with Filament v4/v5 — for Filament 3, use the v1 branch.

Installation

Quick install (recommended)

The installation command does everything wiring-related in one shot: publishes the config and migrations, asks to run them, enables Finisterre (active in every environment by default — manage it from the settings page), runs php artisan filament:assets, injects FinisterrePlugin::make() into every app/Providers/Filament/*PanelProvider.php, adds use FinisterreUserTrait; to app/Models/User.php, and appends the Tailwind @source line to every resources/css/filament/*/theme.css. Then run npm run build.

For each step the command falls back to a printed instruction if your project doesn't match the expected shape (different panel directory, custom User location, no Filament theme, etc.).

For Filament 3, use the v1 branch:

Manual installation

If you'd rather wire things by hand, the package ships the usual "publishables". Start with:

Publishing Filament assets is required for the kanban board's JavaScript:

Without this step, the kanban board will load but drag-and-drop will not work due to missing JavaScript assets.

By default, the package is active in every environment. To restrict it to specific environments, set a comma-separated list in your .env file (or edit it later from the settings page):

Important: If your Filament panel uses a different ID than admin, add this to your .env:

To find your panel ID, check your PanelProvider.php for ->id('...'). For example, if your panel uses ->id('filament'), set FINISTERRE_PANEL_SLUG=filament.

You can change the name of the table in the config file You need to publish and run the migrations with:

If you don't already have the spatie tags package, publish the migrations

Same for spatie media package

The tasks are linked to users, but the project can have a different model for users. You can change the model in the config file and the name attribute column Also, there is a trait to be included in the user's model

Optionally, you can publish the views using

Filament Theme CSS

Required. Following Filament v5 guidance, this package ships raw CSS only — it no longer compiles a Tailwind stylesheet of its own. The utility classes used in its Blade views are compiled by your application's Filament theme. Without the @source lines below the kanban board and task views will render unstyled.

You need a custom Filament theme ( php artisan make:filament-theme). Add the following lines to your theme's CSS file (e.g. resources/css/filament/admin/theme.css) so Tailwind scans the package views for classes, then rebuild your theme ( npm run build):

The installer adds these lines automatically to each detected theme file.

The package comes with a default policy for the tasks that can be overridden in the config file and set your own policy

Usage

Add the plugin to your panel provider. By default every authenticated user can view all tasks — no closure needed:

To restrict access by role, pass closures to the corresponding user… setters:

Settings page

Most configuration can be managed at runtime from an in-app settings page instead of editing the config file. It is opened from a header action (⚙️) on the Kanban board — it is intentionally hidden from the navigation menu — and is gated by userCanConfigureFinisterre() (allowed for everyone by default; see the closure above).

Values are stored in the database and take precedence over config/finisterre.php at runtime, so admins can change them without a deploy. The page covers:

Displaying a user's full name

finisterre.authenticatable_attribute accepts either a single column (default 'name') or an array of columns to concatenate for display:

With an array, the package shows "John Doe" in every user-facing select (task assignee, filter, kanban, comment notify list) and uses CONCAT_WS(' ', ...) for SQL-level selects. Columns must exist on the users table.

Kanban ordering

The kanban board (powered by flowforge) stores each card's position in the order_column, which is an integer. Cards within a column are kept as 10, 20, 30, ….

Flowforge's default algorithm computes positions as the decimal midpoint between two cards plus random jitter, which fills order_column with long decimals like 63821.3847291500. To keep the value a clean integer, TasksKanbanBoard overrides flowforge's calculateAndUpdatePosition() and renumbers the whole target column sequentially on every move. No vendor files are patched, so the behavior survives composer update.

If you are upgrading an existing install whose order_column is still a decimal, publish and run the conversion migration. It renumbers each status column to clean 10, 20, 30, … integers and changes the column type to unsignedInteger:

Notifications follow the move semantics:

SMS notifications

Using smsarena.es as provider. By default, only notifies tasks on creation with priority TaskPriorityEnum::Urgent That can be changed in the config file

Add to your .env file the following:

Reporting issues from your own models

Any model in your app can let users open a Finisterre task against a specific record. The task stores a polymorphic subject pointing back to that record, and the task form shows a link to it.

First publish and run the migration that adds the subject columns to the tasks table:

Make the model implement FinisterreReportable. The InteractsWithFinisterreReports trait provides sensible defaults ( a ClassName (#id) label and a link inferred from the model's Filament resource edit/view page):

Override either method to customise the label or link:

Then add ReportIssueAction wherever the record is available (a resource page, table row, infolist, etc.). It opens a modal asking for a title, description and attachments (images, PDF, and videos up to 3 MB), and associates the created task with the record:

Role restriction for Task Reports

TODO

Development

The package ships raw CSS (resources/css/app.css) with no Tailwind build — utility classes in the views are compiled by the host application's theme via the @source lines above. There is no JavaScript build step. Run php artisan filament:assets in the host application to publish the package's assets.

Testing


All versions of finisterre with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
filament/filament Version ^5.0
filament/spatie-laravel-media-library-plugin Version ^5.0
filament/spatie-laravel-tags-plugin Version ^5.0
laravel/prompts Version ^0.3
pxlrbt/filament-spotlight Version ^2.1
relaticle/flowforge Version ^4.0
spatie/laravel-package-tools Version ^1.16
spatie/laravel-settings Version ^3.0
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 buzkall/finisterre contains the following files

Loading the files please wait ...