Kouib Blocks for Tutor LMS

Version 1.0.0

Professional Gutenberg blocks for Tutor LMS courses: filter, carousel, categories, a fast Arabic-tolerant search and platform stats. Compatible with RTL and theme.json.


The five blocks

  1. Courses Filter — a grid with category buttons, ordering by student count, and a cache per settings combination; works on the frontend and in the editor (live preview).
  2. Courses Carousel — a responsive slider with side arrows, adjustable columns and multiple orderings.
  3. Course Category Boxes — a grid of categories with a counter and a link, plus a custom icon (PNG/SVG) per category uploaded from the media library.
  4. Quick Search — instant (AJAX) results with no page reload, Arabic normalization (أ/إ/آ→ا، ة→ه، ى→ي), smart relevance ranking, a "match exact phrase" option, and adjustable colors/size.
  5. Platform Stats — prominent counters (icon + number + label) for students, instructors, courses and lessons in a responsive grid.

Guaranteed performance

Installation

  1. Upload the folder to wp-content/plugins/ or install the zip from "Plugins → Add New → Upload Plugin".
  2. Activate the plugin, then activate Tutor LMS to provide the courses.
  3. In the editor, add any block from the Kouib Blocks category at the top of the block inserter.

Frequently Asked Questions

Source Code

The source code for this plugin is publicly available at: https://github.com/kouiderbounama/kouib-blocks-for-tutor-lms

The source code for the compiled block editor scripts is also included in the src/ directory of this plugin. Each block's edit.jsx file is the human-readable source that generates the corresponding build/*/index.js file.

To regenerate the compiled files:

  1. Install Node.js 18+ and run npm install in the plugin root.
  2. Run npx wp-scripts build to compile src/ into build/.
  3. Run node build-i18n.js to regenerate translation files.

The vanilla JavaScript files in assets/js/ (carousel.js, search.js, view.js) are hand-written source files and are not generated by build tools.

Changelog (recent)