Init User Engine โ€“ A gamified, frontend-first user system for WordPress
DEV Community

Init User Engine - A gamified, frontend-first user system for WordPress

Why Init User Engine?

Most "membership" or "points" plugins for WordPress are heavy, admin-ajax-based, and hard to theme. Init User Engine takes the opposite approach: everything dynamic - avatar, dashboard, check-in, inbox, VIP purchase - is rendered client-side in pure Vanilla JS and talks to a clean REST API. Drop in one shortcode and you get a full gamified account system on top of native WordPress users.

It's the core user system behind the Init Plugin Suite - the same minimalist, performance-first philosophy as Init Live Search.

Features at a Glance

Gamified Progression

  • EXP & Level system with fully hookable progression logic
  • Coin & Cash wallet with transaction logs (dedicated DB tables, not user meta)
  • Daily check-in with streak milestones and an online-time bonus timer
  • Daily task list, extensible via filter

Frontend-First UX

  • One shortcode: [init_user_engine] - avatar button + full modal dashboard
  • Avatar system with upload, live preview, and revert-to-default support
  • Login/Register modals for logged-out visitors, with custom redirect URLs
  • Pure Vanilla JS - no jQuery, no server-rendered admin-ajax round trips

Monetization & Retention

  • VIP membership, purchased with in-site Coin, with configurable duration tiers (including lifetime)
  • VIP bonus system - extra Coin/EXP percentage for VIP members
  • Redeem Code / Gift Code module - generate single-use or bulk codes, redeem for rewards
  • Referral module with cookie-based signup tracking and rewards for both sides

Communication

  • Built-in inbox with pagination, category filters (System, Rewards, Activity...), read/claim/delete
  • Admin panel to send notifications to selected users or the whole member base, with priority and expiration

Built for Developers

  • REST API for every feature - register, check-in, claim reward, inbox, VIP purchase, redeem code, profile, and more
  • Deep set of action/filter hooks: modify EXP curves, VIP prices, referral rewards, theme colors, VIP body classes, and more
  • Transaction and EXP logs stored in dedicated tables with wp_cache support and true paginated queries - built to scale, not just to demo

Core Modules

Module What it does
EXP & Level Award EXP via hook, auto level-up, customizable EXP curve per level
Wallet (Coin/Cash) Dual-currency system with full transaction history
Check-in Daily rewards, streak milestones, online-duration bonus
VIP Coin-based purchase, expiry tracking, bonus % on rewards
Referral Cookie-based tracking, rewards for referrer and new user
Redeem Code Single-use or bulk gift codes redeemable for Coin/Cash
Inbox Filterable, paginated notification center per user
Admin Notify Send targeted or broadcast messages from wp-admin

REST API

Base: /wp-json/inituser/v1/

Endpoint Purpose
POST /register Create a new user account
POST /checkin Daily check-in
POST /claim-reward Claim reward after online duration
GET /transactions Coin/Cash transaction log
GET /exp-log EXP log
GET /inbox Inbox messages
POST /vip/purchase Purchase VIP package
GET /referral-log Referral history
POST /avatar Upload new avatar
GET /profile/me Current user profile
POST /exchange Convert Cash โ†’ Coin
POST /redeem-code Redeem a gift code

๐Ÿ‘‰ Full endpoint list in the plugin readme.

Developer Hooks

Init User Engine ships with a wide surface of filters and actions so you're never stuck waiting on a plugin update to customize behavior:

// Change how much EXP is required per level
add_filter( 'init_plugin_suite_user_engine_exp_required', function( $required, $level ) {
    return $level * 100;
}, 10, 2 );

// React to a level-up
add_action( 'init_plugin_suite_user_engine_level_up', function( $user_id, $new_level ) {
    // send a custom notification, unlock content, etc.
}, 10, 2 );

Other notable hooks include filters for VIP pricing, referral rewards, check-in milestones, daily tasks, theme colors, and VIP-related body classes - plus actions for EXP/Coin changes, referral completion, and admin notifications.

Where Data Lives

  • user_meta - EXP, level, Coin, Cash, VIP, referral
  • Dedicated DB tables - transaction log and EXP log (migrated off user meta for scalability as of v1.5.0)
  • wp_init_user_engine_inbox - inbox messages

Installation

Install via WordPress.org or:

git clone https://github.com/brokensmile2103/init-user-engine.git

Then:

  • Activate the plugin
  • Drop [init_user_engine] into any page, post, or template
  • Configure theme color, currency labels, and reward values under Settings โ†’ Init User Engine

That's it - modals and logic load automatically.

Part of the Init Plugin Suite

Init User Engine is part of the Init Plugin Suite - a set of minimalist, high-performance plugins built for WordPress developers and creators who value speed, flexibility, and clarity.

Thanks for reading. Got feedback or questions?
โ†’ Project Page
โ†’ GitHub

Comments

No comments yet. Start the discussion.