WordPress plugin intelligence profile

Moqbo – Lightweight Calendar

Moqbo is a lightweight calendar for WordPress with event admin, categories, responsive shortcodes, and an optional token-protected REST API.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.0
Current version1.0.0
WordPress coverageTested up to WordPress 7.0
Minimum stackWP 6.5 · PHP 7.4
Directory statusactive
Last directory update7 Aug 20262mo ago
Active installationsNewAdoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Moqbo – Lightweight Calendar version 1.0.0 as active, updated 2mo ago and tested up to WordPress 7.0.

Overview

About this plugin

Moqbo is a WordPress event calendar plugin for managing categorized timed and all-day events. It stores events and categories in site-specific custom database tables, provides administration screens for managing that data, renders frontend calendars through shortcodes, and can expose selected read and write operations through an optional REST API.

Features

  • Does one thing, but one thing well: Managing and displaying events in a calendar
  • Built to be lightweight: Uses only events and categories
  • Shortcodes: Display the full calendar or the next matching event date on the frontend via [moqbo] or [moqbo-getdate] respectively
  • Optional REST API: Access and create events and categories for programmatic use

Requirements

  • WordPress 6.5 or newer
  • PHP 7.4 or newer

Quick Start

  • Create a category under “Moqbo > Categories”.
  • Create an event under “Moqbo > Add Event”.
  • Add [moqbo] to a post or page.

To display the next date for a matching event, use [moqbo-getdate name="Office Hours"].

API Usage

Moqbo registers WordPress REST API routes under /wp-json/moqbo/v1. Enable the API and the required endpoint methods in “Moqbo > Settings” before calling the general events or categories endpoints.

  • POST /events: Creates an event.
  • GET /events/{slug}: Returns one event by slug.
  • GET /events?start_date=YYYY-MM-DD&end_date=YYYY-MM-DD: Lists events within the date range. The range can span up to 366 days.
  • POST /categories: Creates a category.
  • GET /categories: Lists categories alphabetically.
  • GET /categories/{slug}: Returns one category by slug.

The general API has no update or delete endpoints. All date and time values are interpreted in the WordPress site’s timezone. Event-list date ranges are inclusive: an event is returned when it overlaps any part of the requested range.

Authentication

Enabled GET endpoints are public by default. When Require token authentication for GET requests is enabled, send the configured token as a bearer token. Enabled POST endpoints always require that token, regardless of the GET authentication setting.

Authorization: Bearer 0123456789abcdef0123456789abcdef01234567

Tokens must be 32 to 255 characters and should only be sent over HTTPS. Set Content-Type: application/json for JSON POST bodies.

Categories

Create a category before creating events that reference it:

POST /wp-json/moqbo/v1/categories Content-Type: application/json Authorization: Bearer 0123456789abcdef0123456789abcdef01234567

{ "name": "Meetings", "slug": "meetings", "color": "#2271b1" }

On success, the endpoint returns 201 Created and a Location header pointing to /wp-json/moqbo/v1/categories/meetings:

{ "name": "Meetings", "slug": "meetings", "color": "#2271b1", "event_count": 0 }

The GET /wp-json/moqbo/v1/categories endpoint returns an array of category objects with the same fields. Category names and slugs must be unique; color must be a six-digit hex value such as #2271b1.

Events

Create an event with an existing category_slug:

POST /wp-json/moqbo/v1/events Content-Type: application/json Authorization: Bearer 0123456789abcdef0123456789abcdef01234567

", "start_at": "2026-01-15 09:00:00", "end_at": "2026-01-15 10:00:00", "all_day": false }

On success, the endpoint returns 201 Created and a Location header pointing to /wp-json/moqbo/v1/events/team-meeting:

", "start_at": "2026-01-15 09:00:00", "end_at": "2026-01-15 10:00:00", "all_day": false }

start_date=2026-01-01&end_date=2026-01-31 to retrieve matching events. It returns a JSON array of event objects in start-time order; GET /wp-json/moqbo/v1/events/team-meeting returns one object using the same representation.

All event fields in the request body are required. start_at and end_at must use YYYY-MM-DD HH:MM:SS. Timed events must end after they start.

All-day events must start and end at midnight, and their end may equal their start.

Errors

WordPress REST errors are JSON objects. For example, an invalid or missing bearer token returns 401 Unauthorized:

", "data": { "status": 401 } }

Disabled routes return 403, malformed requests and validation failures return 400, and requests for unknown event or category slugs return 404.

Development

js 18 or newer and npm:

npm ci npm run build

Additional commands:

npm run format npm run zip

The ZIP command requires WP-CLI with dist-archive. Test changes on a clean WordPress installation with WP_DEBUG enabled and run the official Plugin Check to find any potential issues.

License

0 or later. txt.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • event calendar
  • rest api
  • events
  • shortcode
Compatibility & maintenance

Compatibility & maintenance

Tested up to WordPress 7.0

Not yet marked as tested with WordPress 7.1. WordPress.org currently lists Tested up to 7.0.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.0
Minimum requirementsWordPress 6.5 · PHP 7.4
Update activity7 Aug 20262mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

No tracked version or compatibility changes have been recorded by WP PlugIndex yet.

Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.