Craft Laravel Guide

Master the platform and build complete Laravel modules in minutes

Getting Started

1

Access the Generator

Navigate to CRUD Generator in the admin sidebar. Click "Create" to launch the module wizard.

2

Define Fields & Types

Add fields with database types and HTML input types. Choose from text, number, date, select, file upload, and more.

3

Configure Relationships

Link your module to existing models. Select BelongsTo, HasMany, HasOne, or BelongsToMany. The system auto-configures keys and pivot tables.

4

Set Query Conditions

Add custom Where, WhereHas, and OrWhere filters to control what data appears in tables and dropdowns.

5

Generate & Manage

Click Generate. Your module is live. Manage data through the auto-generated Filament resource with full search, sort, and export support.

Available Field Types

Text Fields

String, Text, Textarea, Email, URL, Rich Text Editor

Number Fields

Integer, BigInteger, Decimal, Float, Double

Date & Time

Date, DateTime, Time, Timestamp — with calendar pickers

Selection

Select, Multiselect, Radio, Checkbox, Toggle

Media

Image Upload, File Upload with preview and validation

Relationships

BelongsTo, HasMany, HasOne, BelongsToMany with auto key handling

Relationships

  • BelongsTo: Many-to-one (e.g., Post belongs to a Category)
  • HasMany: One-to-many (e.g., Category has many Posts)
  • HasOne: One-to-one (e.g., User has one Profile)
  • BelongsToMany: Many-to-many with pivot table support (e.g., Post belongs to many Tags)

Best Practices

  • Use singular CamelCase names for your models (e.g., BlogPost, ProductCategory)
  • Set unique and required validations on critical fields early
  • Define relationships before generating if other modules depend on them
  • Use query conditions to filter dropdown data and improve performance
  • Configure table columns to show only the most relevant data
  • Review generated code and customize business logic as needed

Need Help?

Our team is here to help you get the most out of Craft Laravel. Reach out via the contact page or check the documentation for detailed guides on advanced features.

Contact Support