VibeReserve Booking Light

Description

VibeReserve Booking Light is a free, fully-functional appointment booking plugin built for beauty salons, spas, barbershops, wellness centres, clinics, and any service-based business. It ships with a clean admin dashboard and a multi-step booking form for your customers.

Let customers book 24/7 from your website and manage everything from one modern dashboard.

Everything included (free, unlimited)

  • Multi-step booking form — embedded via shortcode or Gutenberg block
  • Admin dashboard — real-time stats, booking charts and upcoming appointments
  • Unlimited services — add as many services as you need with images, descriptions, pricing, duration and sale prices
  • Unlimited staff — add team members with profiles and weekly schedules
  • Unlimited categories — organise services with custom colours
  • Unlimited locations — manage multiple business locations/branches
  • Booking calendar — interactive calendar view of all appointments
  • Email notifications — automated confirmation emails to customer and admin on every booking
  • Booking management — view, confirm, complete, or cancel bookings
  • Staff roles & access control — assign Admin, Manager, or Staff roles
  • Gutenberg blocks — booking form, services grid, and staff grid blocks
  • Fully responsive — looks great on desktop, tablet and mobile
  • Translation ready — compatible with WPML and Loco Translate

Optional premium add-on

An optional, separately-distributed premium add-on is available from the author’s website at luminaith.com/vibereserve-booking. The premium add-on adds features that this free plugin does not include (such as online payment gateways, WhatsApp notifications, Google Calendar sync, automated email reminders, blocked dates, customer self-service portal, reviews, revenue reports, iCal export and REST API access).

The premium add-on is not required. The free plugin is complete and has no time limits, usage limits, or feature locks.

Shortcodes

  • [vibereserve_booking] — full multi-step booking form
  • [vibereserve_services] — services showcase grid (supports category, limit, featured attributes)
  • [vibereserve_staff] — team grid

External services

This plugin does not connect to any external service by default. All bookings, services, staff and schedules are stored locally in your WordPress database. Emails are sent through your own WordPress site using wp_mail().

The plugin also does not load any JavaScript or CSS from remote CDNs — Chart.js, FullCalendar and Cropper.js are bundled with the plugin and served from your own site.

Blocks

This plugin provides 5 blocks.

  • VibeReserve: Booking Form
  • VibeReserve: Services Grid
  • VibeReserve: Team / Staff Grid
  • VibeReserve: My Bookings
  • VibeReserve: Reviews

Installation

  1. Upload the vibereserve-booking-light folder to /wp-content/plugins/
  2. Activate the plugin from Plugins Installed Plugins
  3. Go to VibeReserve Settings to configure your business information
  4. Add service categories via VibeReserve Categories
  5. Add your services via VibeReserve Services
  6. Add staff and set their weekly schedules via VibeReserve Staff
  7. Place [vibereserve_booking] on any page to display the booking form

FAQ

Does this work with any theme?

Yes. The booking form uses self-contained CSS and works with any WordPress theme including Elementor, Divi, Astra, GeneratePress, and more.

How many services, staff, categories and locations can I add?

Unlimited. The free plugin has no numeric caps. Add as many services, staff members, categories and locations as you need.

Does this plugin connect to any external service?

No. All data is stored and processed locally on your own site. The plugin does not phone home and does not load any resources from third-party CDNs.

Is it mobile friendly?

Yes. Both the admin interface and the frontend booking form are fully responsive and tested on all major devices and browsers.

Is my data safe if I install the premium add-on later?

Yes. The optional premium add-on uses the same database tables, so all your bookings, services, staff and settings are preserved.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“VibeReserve Booking Light” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.5.5

  • Tightened input handling in handle_save_booking and handle_save_service: status fields constrained to whitelisted values, wp_unslash() applied to all reads, defensive isset() checks before every $_POST access.
  • Cleaned up dozens of stale phpcs:ignore directives that were emitted before per-handler check_ajax_referer() calls were added; the remaining ones are limited to legitimate direct-DB-query and unlink() annotations.
  • Service assignment arrays (staff_ids, location_ids) now go through wp_unslash() and absint() before being persisted.

1.5.4

  • Restructured the image upload handler so wp_generate_attachment_metadata() is the first function called immediately after require_once wp-admin/includes/image.php.
  • Strict validation of the image_data data: URL with a tight regex (only image/jpeg, image/png, image/webp + base64 charset) before any decoding.
  • Refactored the admin bookings list view: filter conditions, pagination and counts now build a single SQL string and arguments array passed through one $wpdb->prepare() call.
  • Simplified the bookings filter nonce flow into a single straight-line check; filter parameters are only read when the nonce verifies.

1.5.3

  • Replaced indirect nonce helper calls with direct check_ajax_referer() calls at the top of every AJAX handler so static analysers can detect the nonce check without tracing through helper methods.
  • Added an explicit wp_nonce_field() / wp_verify_nonce() pair around the admin bookings list filter form; filter parameters are ignored when the nonce is missing or invalid.
  • Hardened admin/views/email-templates.php with a capability check and a whitelist for the “tab” query argument.

1.5.2

  • Print receipt now loads via admin-post.php with standard WordPress enqueue pipeline.
  • Tightened nonce and capability checks on admin AJAX endpoints.
  • Refactored location-filtered queries to use $wpdb->prepare() with placeholders.
  • Escape-late applied on upgrade page and frontend service card output.
  • Renamed internal helper classes to use a plugin-specific 4+ character prefix.

1.5.1

  • First release prepared for the WordPress.org plugin directory.
  • Removed all numeric caps (services, staff, categories, locations) — the free plugin is now fully-featured with no limits.
  • Bundled Chart.js, FullCalendar and Cropper.js locally; no remote CDN calls.
  • Converted inline JavaScript and CSS to properly enqueued assets.
  • Replaced json_encode usages with wp_localize_script for chart data.
  • Multi-step booking form with Gutenberg block.
  • Admin dashboard with stats and interactive calendar.
  • Services, staff, categories, and locations management.
  • Automated booking confirmation emails to customer and admin.
  • Staff roles & access control (Admin, Manager, Staff).