RoomMaster plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

RoomMaster by Zoltan Tajti

Community

Overnight accommodation engine for Filament: rooms, beds, rates, bookings, guests, and developer payment/calendar hooks.

Tags: Forms Developer Tool Form Layout Kit Panels Widget
Supported versions:
5.x
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Zoltan Tajti avatar Author: Zoltan Tajti

Documentation

Overnight stays for Laravel + Filament 5: rooms, beds, seasonal rates, bookings and guests — with payment / invoice / calendar left as developer hooks.

Not a hosted PMS and not an OTA channel manager. It runs inside your Laravel project.

#Purchases

Pro and VIP are in-plugin purchases. After installing Lite, open RoomMaster → Settings → Licence and use Buy Pro / Buy VIP. Checkout runs on Anystack; paste the licence key back into the same Licence tab and Activate.

#Stack

  • PHP 8.3+
  • Laravel 11.28+ / 12 / 13
  • Filament 5.x

#Install instructions

#1) Add the package with Composer

A GitHub Release alone is not enough for composer require. Composer needs either Packagist (or another Composer mirror) or an explicit VCS/path repository in your app’s composer.json.

Option A - GitHub VCS (works with the public/private repo + release tags)

In your Laravel app composer.json:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/zoltantajti/filament-room-master.git"
        }
    ],
    "require": {
        "roommaster/filament-room-master": "^1.0"
    }
}

Then:

composer update roommaster/filament-room-master

For a private GitHub repo, authenticate Composer (e.g. composer config --global github-oauth.github.com <TOKEN> with a token that can read the repo).

Option B — local / zip path (Anystack download or manual copy)

  1. Download the release zip (GitHub Release or Anystack customer download).
  2. Extract it into your project, e.g. packages/room-master/ (do not put it under vendor/ by hand).
  3. In the app composer.json:
{
    "repositories": [
        {
            "type": "path",
            "url": "packages/room-master",
            "options": { "symlink": true }
        }
    ],
    "require": {
        "roommaster/filament-room-master": "*"
    }
}
composer update roommaster/filament-room-master

Nothing else needs manual copying: Composer autoloads RoomMaster\ from the package. Migrations load from the package automatically; views/lang stay in the package unless you publish them.

#2) Publish config (optional but recommended)

php artisan vendor:publish --tag=room-master-config

This copies config/room-master.php into your app’s config/ folder. Product/policy/checkout defaults ship in the package; optional env:

ROOM_MASTER_LICENSE_PEPPER=optional-extra-secret
ROOM_MASTER_ROUTE_PREFIX=book
ROOM_MASTER_RELEASE_TAG=1.0.0

Migrations are auto-loaded from the package. Only publish them if you want editable copies in database/migrations:

php artisan vendor:publish --tag=room-master-migrations

#3) Migrate

php artisan migrate

Creates rm_* tables (rm_rooms, rm_beds, rm_bookings, …).

#4) Register the Filament plugin

In your panel provider (e.g. app/Providers/Filament/AdminPanelProvider.php):

use RoomMaster\RoomMasterPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugin(RoomMasterPlugin::make());
}

#5) Public booking form

Available at /book by default (override with ROOM_MASTER_ROUTE_PREFIX or config/room-master.php).

#6) Upgrade to Pro / VIP (in-plugin)

  1. Open RoomMaster → Settings → Licence
  2. Click Buy Pro or Buy VIP (Anystack checkout)
  3. Paste the licence key and click Activate

Composer installs Lite by default (no key).

#License tiers

Lite (free) Pro VIP
Rooms / beds 1 / 3 unlimited unlimited
Guests — ✓ ✓
Form templates 1 static 3 selectable Frontend Creator
Email templates confirm confirm / cancel / reminder dynamic editor
Hook toggles docs admin UI admin UI + cookbook

Product/policy/checkout defaults ship in config/room-master.php. Buy Pro / Buy VIP open https://checkout.anystack.sh/room-master.

Optional licence re-check cron: php artisan room-master:license:validate --force

#Hooks

Empty by default. Enable toggles under RoomMaster → Integrations (Pro+), then override:

use RoomMaster\Support\RoomMaster;

RoomMaster::hook('payment', function ($booking) {
    // redirect to your gateway
});

// Gateway returns here from your route:
RoomMaster::paymentEventCallback($payload);

Available keys: payment, paymentCallback, invoice, invoiceCallback, googleCalendar, googleCalendarCallback, icalExport, icalExportCallback.

#Tables

All tables use the rm_ prefix (rm_rooms, rm_beds, rm_bookings, …).

#Licence

Proprietary (not MIT / open source). See LICENSE.

  • Lite — free, with product limits
  • Pro / VIP — paid via Anystack; activate in Settings → Licence

#Marketplace pitch

Overnight accommodation engine for Filament developers: bed-level inventory, date/LOS pricing, bookings, guests, and gateway-agnostic integration hooks.

The author

Zoltan Tajti avatar Author: Zoltan Tajti

Overnight accommodation engine for Filament: rooms, beds, rates, bookings, guests, and developer payment/calendar hooks.

Plugins
1