Init User Engine – Gamified, Fast, Frontend-First
Init User Engine – Gamified, Fast, Frontend-First

Init User Engine – Gamified, Fast, Frontend-First

5/5 (1 ratings) 40 active installs Updated Sep 23, 2026
Settings with options for theme color, currency labels, and admin bar/Gravatar control.

Settings with options for theme color, currency labels, and admin bar/Gravatar control.

Init User Engine is a lightweight, no-bloat user system for modern WordPress sites. It’s designed for maximum frontend flexibility and gamified user engagement. All dynamic interfaces are rendered via JavaScript with real-time REST API interaction.

No jQuery. Minimal settings. Smart by default.

What you get:

  • Display user avatar and dashboard via shortcode
  • Show level, EXP, Coin/Cash, and full user wallet
  • Frontend login & registration modal with Cloudflare Turnstile (or built-in math captcha) protection
  • Let users check-in daily and receive timed rewards
  • Auto-track referral registrations with reward system
  • Let users buy VIP status using Coin, Cash, or both
  • Redeem Code / Gift Code and dedicated VIP Code system, with CSV export from wp-admin
  • Built-in inbox for notifications (uses custom DB table), with pinned/expiring messages and a stats dashboard
  • Custom avatar support with upload & preview modal
  • Send custom notifications to selected users or all members from wp-admin
  • Optional “Require Login to Access Site” mode that gates the entire frontend behind the built-in login modal
  • Optional one-step “Login After Register” so new users land on the site already signed in

This plugin is the core user system behind the Init Plugin Suite – optimized for frontend-first interaction, extensibility, and real-time gamification.

GitHub repository: https://github.com/brokensmile2103/init-user-engine

Features

Profile & Avatar

  • Avatar shortcode [init_user_engine] – renders the guest login button or the logged-in avatar with dropdown dashboard automatically
  • Modal dashboard showing level, EXP progress, Coin/Cash wallet, and quick links
  • Custom avatar upload with live preview, crop-free flow, and one-click revert to the default/Gravatar image
  • Configurable upload policy (allow everyone, VIP only, or disable uploads entirely) with a configurable max file size
  • Theme override support: any template file can be overridden by copying it to your-theme/init-user-engine/

Accounts, Login & Registration

  • Frontend login & registration modal – no theme editing or template overrides required
  • “Login After Register” option to automatically sign users in right after they create an account (disabled by default)
  • Failed logins reopen the login modal on the current page with an inline error message, instead of redirecting to wp-login.php
  • Cloudflare Turnstile captcha on registration, with a built-in math-question captcha as automatic fallback when no Turnstile keys are set
  • Optional protection of the native WordPress login, registration, and lost-password forms (wp-login.php) using the same Turnstile setup
  • Custom redirect URLs for “Register” and “Lost password” links
  • Optional “Require Login to Access Site” mode that gates the entire frontend behind the built-in login modal
  • Ability to temporarily disable new registrations without affecting other plugins or WordPress core

Gamification

  • EXP & Level system with hookable progression logic
  • Coin & Cash dual-wallet system with transaction logs and a configurable exchange rate between the two currencies
  • Daily check-in with streak milestones and an online-time bonus timer
  • Optional Streak Recovery: members who miss a few days can spend Coin to keep their check-in streak alive (allowed missed days and Coin price per day are configurable, off by default)
  • Built-in reward hooks for registration, daily login, comments, published posts, and completed WooCommerce orders (when WooCommerce is active)

VIP Membership

  • VIP membership system with Coin-based, Cash-based, or combined purchase options
  • Multiple configurable pricing tiers per duration, including a lifetime option
  • VIP bonus multipliers for Coin/EXP earning
  • Optional VIP purchase lock (globally disable new purchases) and stacking restriction

Referral

  • Referral module with cookie-based signup tracking
  • Separate, configurable rewards for both the referrer and the newly referred user

Redeem & VIP Codes

  • Redeem Code / Gift Code module – code in, rewards out
  • Dedicated VIP Codes module to grant VIP duration through a code
  • One-click CSV export for both code lists (full list, streamed in batches, UTF-8 BOM, and sanitized against CSV/formula injection)

Inbox & Notifications

  • Built-in inbox system with pagination and read/claim/delete actions
  • Pinned messages that automatically unpin once read, or once their optional expiration time passes
  • Admin panel to send custom notifications to selected users or all members, with priority and expiration
  • Inbox Statistics dashboard (Users Init User Engine Inbox Statistics) with date-range filtering

Admin Tools

  • Manual Top-up tool for Coin/Cash (Users Init User Engine Top-up Coin/Cash)
  • Per-user overview metabox on the WordPress profile/edit-user screen (level, wallet, VIP status, recent activity)

Developer-Friendly

  • REST API for all features (read/write/modify)
  • Action/filter hooks for full customization
  • Pure Vanilla JS frontend – no jQuery, no server bloat

Developer Hooks

Filters

  • init_plugin_suite_user_engine_online_minutes – Modify required online minutes after check-in
  • init_plugin_suite_user_engine_vip_prices – Modify VIP package prices
  • init_plugin_suite_user_engine_referral_rewards – Modify referral rewards
  • init_plugin_suite_user_engine_localized_data – Modify frontend JS data
  • init_plugin_suite_user_engine_calculated_coin_amount – Modify Coin reward before apply
  • init_plugin_suite_user_engine_calculated_exp_amount – Modify EXP reward before apply
  • init_plugin_suite_user_engine_exp_required – Modify EXP required per level
  • init_plugin_suite_user_engine_checkin_milestones – Set milestone streak days
  • init_plugin_suite_user_engine_format_inbox – Modify formatted inbox data
  • init_plugin_suite_user_engine_render_level_badge – Customize level badge HTML
  • init_plugin_suite_user_engine_inbox_insert_data – Modify inbox data before inserting into database
  • init_plugin_suite_user_engine_validate_register_fields – Validate or modify registration fields before account creation
  • init_plugin_suite_user_engine_after_register – Hook after successful user registration (pass user ID and submitted data)
  • init_plugin_suite_user_engine_daily_tasks – Add or modify daily task list and logic
  • init_plugin_suite_user_engine_captcha_bank – Extend or modify the internal captcha question bank used for fallback validation
  • init_plugin_suite_user_engine_format_log_message – Customize transaction log message display with access to entry data, source, type, and amount
  • init_plugin_suite_user_engine_should_keep_original – Override decision to keep original uploaded avatar (GIF or other formats)
  • init_plugin_suite_user_engine_vip_expire_soon_threshold – Modify the threshold (in seconds) used to determine when VIP is considered close to expiration
  • init_plugin_suite_user_engine_body_vip_classes – Add, remove, or modify VIP-related CSS classes applied to the <body> element
  • init_plugin_suite_user_engine_theme_colors – Modify theme color system (primary and active colors)
  • init_plugin_suite_user_engine_streak_restore_max_days – Modify how many missed check-in days a user may cover to keep their streak (return 0 to disable it for that user)
  • init_plugin_suite_user_engine_streak_restore_cost – Modify the Coin cost of keeping a streak (receives total cost, missed days, and user ID)

Actions

  • init_plugin_suite_user_engine_level_up – When user levels up
  • init_plugin_suite_user_engine_exp_added – After EXP is added
  • init_plugin_suite_user_engine_transaction_logged – After Coin/Cash is logged
  • init_plugin_suite_user_engine_exp_logged – After EXP log is recorded
  • init_plugin_suite_user_engine_inbox_inserted – After new inbox message
  • init_plugin_suite_user_engine_referral_completed – When referral is completed
  • init_plugin_suite_user_engine_after_checkin – After user check-in
  • init_plugin_suite_user_engine_streak_restored – After a user paid Coin to keep their check-in streak (user ID, missed days, cost, new streak)
  • init_plugin_suite_user_engine_after_claim_reward – After user claims reward
  • init_plugin_suite_user_engine_vip_purchased – After VIP is purchased
  • init_plugin_suite_user_engine_add_exp – Triggered when adding EXP via hook
  • init_plugin_suite_user_engine_add_coin – Triggered when adding Coin via hook
  • init_plugin_suite_user_engine_coin_changed – After user’s Coin balance is updated
  • init_plugin_suite_user_engine_cash_changed – After user’s Cash balance is updated
  • init_plugin_suite_user_engine_admin_send_notice – When admin sends notification via wp-admin.

REST API Endpoints

Base: /wp-json/inituser/v1/

  • POST /register – Create a new user account
  • POST /checkin – Daily check-in (optional JSON body: prompt_restore, restore_streak, restore_cost for Streak Recovery)
  • POST /claim-reward – Claim reward after online duration
  • GET /transactions – Get Coin/Cash transaction log
  • GET /exp-log – Get EXP log
  • GET /inbox – Get inbox messages
  • POST /inbox/mark-read – Mark a message as read
  • POST /inbox/mark-all-read – Mark all as read
  • POST /inbox/delete – Delete a single message
  • POST /inbox/delete-all – Delete all messages
  • POST /vip/purchase – Purchase VIP package
  • GET /referral-log – Get referral history
  • POST /avatar – Upload new avatar
  • POST /avatar/remove – Remove custom avatar and revert to default
  • GET /profile/me – Get current user profile
  • POST /profile/update – Update profile information
  • GET /daily-tasks – Get list of completed daily tasks and rewards
  • POST /exchange – Convert Cash Coin based on exchange rate
  • POST /redeem-code – Redeem gift code (returns Coin/Cash rewards)

License

This plugin is licensed under the GPLv2 or later.
You are free to use, modify, and distribute it under the same license.