LFRs: Likes, Favourites, Ratings & Reviews

Adds likes, dislikes, favourites, ratings, and threaded reviews with moderation to any Payload collection via a headless REST API.

Community 1 MIT v1.1.1

Installation

pnpm add payload-lfrs

About

LFRs bolts user-engagement features onto your existing Payload collections. For each target collection you enable likes, dislikes, favourites, ratings, and reviews with threaded replies. The plugin spins up its own interaction collections and a REST API, so your frontend keeps full control of how the UI looks and behaves. It uses the standard curried plugin pattern and injects aggregate fields plus join fields into each target collection, giving you reverse relationships in the admin panel. Cascade-delete hooks remove related interactions when a document is deleted. All actions flow through endpoints mounted under /lfrs/, covering like, dislike, favourite, rate, review, reply, status, distribution, counts, and per-user lookups. Every feature accepts `true`, `false`, a roles array, or a custom async function that receives the request and target document, so you can gate likes to buyers or replies to admins. Ratings are configurable (max value, step for half-stars, icon hint). Reviews can carry media through an existing upload collection with MIME, count, and size limits, and an optional moderation queue surfaces an admin view at `/lfrs-moderation`. A global settings page allows runtime overrides and can be hidden. It requires Payload 3.x and a react-rating peer dependency. Disabling the plugin preserves the schema for migrations but stops endpoints, hooks, and admin components. Review media needs a pre-existing upload-enabled collection; the plugin does not create one for you.

Package info

Package name
payload-lfrs
Latest version
1.1.1
Unpacked size
632 kB
License
MIT
Last publish
Jun 26, 2026

Similar plugins

More in Content