Download the PHP package artisanpack-ui/forms without Composer

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

ArtisanPack UI Forms

ArtisanPack UI Forms is a comprehensive form builder and management package for Laravel applications. Built on Livewire 3, it provides a drag-and-drop form builder, submission management, email notifications, file uploads, multi-step forms, conditional logic, and webhook integrations.

🚀 Quick Start

Installation

Basic Usage

The success message, redirect URL and other display options are form settings, edited in the admin (/admin/forms/{form}/edit, Settings tab).

✨ Key Features

🧩 Components

Livewire Components

Component Description
FormBuilder Visual drag-and-drop form builder interface
FormRenderer Renders forms for user submission
FormsList Lists and manages forms
SubmissionsList Lists and manages submissions
SubmissionDetail Displays submission details
NotificationEditor Configure email notifications

Available Field Types

Basic Fields: Text, Email (with optional confirmation), Phone, Number, URL, Text Area (with optional rich text editor), Hidden

Choice Fields: Dropdown Select (optionally searchable), Radio Buttons, Single Checkbox, Toggle, Checkbox Group, Multi-Select, with image choices, an "Other" choice, predefined lists and dynamic choices

Advanced Fields: File Upload (single or multiple), Date, Time, Date & Time, Date Range, Rating, Slider, Color, Net Promoter Score, Likert / Matrix, Ranking, Name, Address, List, Calculation, Signature, Consent, CAPTCHA

Layout Elements: Section, Heading, Paragraph, Divider, Custom HTML

Every input field can be read-only, populated dynamically, given an admin label, made administrative (filled in by admins on the submission), or kept private with "Do not store", "Mask in admin" and "Redact after (days)". See the Form Builder and Field Privacy & Visibility docs.

📖 Documentation

Comprehensive documentation is available in our Documentation Wiki:

⚙️ Configuration

Publish the configuration file:

Environment Variables

The package supports the following environment variables:

Variable Description Default
FORMS_ADMIN_PREFIX URL prefix for admin routes admin/forms
FORMS_UPLOADS_DISK Storage disk for file uploads form-uploads
FORMS_UPLOADS_MAX_SIZE Maximum file size in KB 10240 (10MB)
FORMS_RETENTION_DAYS Days to keep submissions (null = forever) null
FORMS_CAPTCHA_DRIVER Default CAPTCHA provider (turnstile, hcaptcha, recaptcha_v2, recaptcha_v3) turnstile
FORMS_MEDIA_FOLDER_ID / FORMS_MEDIA_UPLOADED_BY Media library folder and uploader for file fields stored in the media library null
FORMS_CHOICE_IMAGES_DISK Disk for image-choice uploads without the media library public
FORMS_CONSENT_STORE_TEXT Store the consent text with each consent true
FORMS_WEBHOOKS_ENABLED Enable the global webhook false
FORMS_RESTRICT_BY_OWNER Restrict forms to their owners false
FORMS_ALLOW_ADMIN_BYPASS Allow admins to bypass ownership true
FORMS_USER_MODEL User model class App\Models\User

Configuration Options

Key configuration options in config/artisanpack/forms.php:

🔧 Artisan Commands

📦 Requirements

🤝 Dependencies

This package integrates with the ArtisanPack UI ecosystem:

🎯 Events

The package dispatches events for key actions:

🤖 AI features

The Forms package ships four opt-in AI agents that plug into the artisanpack-ui/ai feature registry. Install artisanpack-ui/ai (v1.0+) and configure credentials to enable them; each feature no-ops when its toggle is off, so upgrades are non-breaking.

Feature key Agent Default model What it does
forms.spam_detection SpamDetectionAgent claude-haiku-4-5 Score a single submission for spam. Returns spam_score, verdict, and reasons.
forms.submission_summary SubmissionSummaryAgent claude-sonnet-4-6 Periodic digest of submission themes, notable entries, and suggested follow-ups.
forms.response_classification ResponseClassificationAgent claude-haiku-4-5 Categorize a submission against a caller-supplied set of labels; may propose a new one.
forms.smart_validation SmartFieldValidationAgent claude-haiku-4-5 Opt-in per-field semantic plausibility check that complements format validation.

Each agent is invoked the same way — construct it with for() and call run():

Each feature also ships a Livewire trigger component you can drop into the admin surface. Components no-op when the feature toggle is off:

See the AI RFC for the shared registry, toggle, and credential story across ArtisanPack UI packages.

🔌 Extensibility

Add custom field types with a field type handler (since 1.6.0). The handler holds the type's definition, builder settings, validation, display, export and merge tags:

Array definitions registered through ap.forms.fieldTypes still work. See Field Type Handlers.

Hook naming

All package hooks use the ap.forms.* camelCase convention shared across the ArtisanPack UI ecosystem. Hooks previously shipped under forms.* / snake_case names remain registered as deprecation aliases (via Support\HookAliases), so existing subscribers keep firing but emit an info-level deprecation log. The aliases will be removed in the next major version — migrate to the new names listed below.

Old (deprecated) New (canonical)
forms.field_types ap.forms.fieldTypes
forms.field_categories ap.forms.fieldCategories
forms.validation_rules ap.forms.validationRules
forms.form.created ap.forms.form.created
forms.form.updated ap.forms.form.updated
forms.form.deleted ap.forms.form.deleted
forms.submission.created ap.forms.submission.created
forms.submission.updated ap.forms.submission.updated
forms.submission.deleted ap.forms.submission.deleted
forms.webhook_payload ap.forms.webhookPayload
forms.settings_tabs ap.forms.settingsTabs
forms.submission_data ap.forms.submissionData
forms.export_headers ap.forms.exportHeaders
forms.export_data ap.forms.exportData
forms.notification_recipients ap.forms.notificationRecipients
forms.notification.before_send ap.forms.notification.beforeSend
forms.notification.sent ap.forms.notification.sent
forms.notification_message ap.forms.notificationMessage

Additional hooks

The following hooks have no legacy alias — they were introduced under the canonical ap.forms.* convention.

Hook Type Payload
ap.forms.beforeValidate action (FormRequest $request)
ap.forms.validated action (FormRequest $request, array $validated)
ap.forms.fieldRender filter (string $html, FormField $field)
ap.forms.fieldCategories filter (array $categories)
ap.forms.fieldSettings filter (string $html, FormField $field, Form $form)
ap.forms.fieldCardPreview filter (string $html, FormField $field)
ap.forms.integrationRegistered action (string $slug, array $config)
ap.forms.notificationSubject filter (string $subject, FormNotification $notification, FormSubmission $submission)
ap.forms.notificationBody filter (string $body, FormNotification $notification, FormSubmission $submission)
ap.forms.readOnlyValue filter (mixed $value, FormField $field) — the value a read-only field is stored with (1.6.0)
ap.forms.fieldValue.{parameter} filter (mixed $default, FormField $field, PopulationContext $context[, string $subInputKey]) — a dynamically populated field's starting value (1.6.0)
ap.forms.choiceSources filter (array $sources) — register dynamic choice sources (1.6.0)
ap.forms.predefinedChoices filter (array $lists) — add predefined choice lists (1.6.0)
ap.forms.countries filter (array $countries) — the country list for address and phone fields (1.6.0)
ap.forms.captchaDrivers filter (array $drivers) — register CAPTCHA drivers (1.6.0)
ap.forms.canRevealMaskedValues filter (bool $allowed, ?Authenticatable $user) — who may see masked values (1.6.0)
ap.forms.addressAutocomplete filter (string $html, FormField $field) — HTML printed after an address field (1.6.0)

Examples:

🤝 Contributing

Contributions are welcome! To contribute:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Merge Request

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting merge requests.

📄 License

ArtisanPack UI Forms is open-sourced software licensed under the MIT license.


All versions of forms with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
illuminate/support Version ^11.0|^12.0|^13.0
artisanpack-ui/livewire-ui-components Version ^2.0
artisanpack-ui/security Version ^1.0|^2.0
artisanpack-ui/accessibility Version ^2.1
artisanpack-ui/hooks Version ^1.3
livewire/livewire Version ^3.6.4|^4.0
propaganistas/laravel-phone Version ^6.1
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 artisanpack-ui/forms contains the following files

Loading the files please wait ...