Every quiz attempt can be a fresh draw.
Question pools now serve a new random set each attempt.
Build a pool of questions, then have a quiz or exam pull a set number at random from it, say 15 from a bank of 40. Every attempt and every learner gets a different draw, with answer order shuffled too. It is the backbone of a fair high-stakes exam: a large bank, a small draw, no two sittings alike. Add a pool item and a pick count under Assessments.
Sell a course as a payment plan.
Let buyers pay in installments.
Offer a course as a set number of monthly or yearly payments, for example three payments of $100 instead of $300 up front. Buyers get access while they pay, and the course is theirs to keep once it's paid off. Set it up under the offer's Billing options. Creator and up.
Win back course checkouts that didn't finish.
Automatic abandoned-cart recovery.
When someone starts a course checkout and doesn't complete it, Mobieus now emails them a friendly reminder with a one-click link to pick up where they left off. One nudge, no nagging. It runs on its own for every course offer, on Creator and up.
See the subscription numbers that actually matter.
MRR over time, not just right now.
Your membership and course dashboards now chart monthly recurring revenue over the last 12 months, so you can see whether it is growing or shrinking, not just today's total.
Churn rate, trial conversion, ARPU, and LTV.
New stats show the share of subscribers who cancel, how many trials convert to paid, your average revenue per subscriber, and estimated lifetime value. The metrics you steer by, in one place.
Course subscriptions get their own dashboard.
The same revenue view now covers your recurring course offers and all-access membership, under Admin, Courses, Subscriptions. (We also fixed the membership dashboard's churn and MRR figures.)
Your members hear about billing problems before they lose access.
Dunning emails when a renewal fails.
If a member's renewal payment fails, they get an email and an in-app notice right away, with a link to update their card before access ends. Fewer silent cancellations and less lost revenue.
Trial-ending reminders.
Members on a free trial get a heads-up before it converts to a paid subscription, so the first charge is never a surprise.
Recovered and canceled notices too.
When a failed payment goes through on the next try, or a subscription is canceled, the member gets a clear confirmation. This covers course subscriptions, paid community access, and paid forums.
Sell courses as subscriptions, with free trials.
Charge monthly or yearly for a course.
Set any course offer to recurring billing. Members pay every month or year to keep access, and it renews automatically. You are no longer limited to one-time sales.
Offer an all-access membership.
Turn on a single plan that unlocks your whole course catalog for one recurring price. Courses you publish later are included automatically, with no per-course setup.
Start with a free trial.
Give new subscribers a free trial of any length. They get full access during the trial and are charged when it ends, unless they cancel first.
Members manage their own billing.
Subscribers update their card or cancel from a self-serve billing page, so you stay out of the loop. Available on Creator and up.
Sell more at checkout: order bumps and one-step upsells.
Add an order bump to any course.
Offer a related course or workbook right on the checkout page. Buyers tick one box to add it, pay once, and get both. You set the bump price.
Offer a one-step upsell after purchase.
Right after someone buys, show them a single next-step offer. If they want it, they add it in a quick, pre-filled checkout.
Set it up per offer.
Open a course offer in your admin and use "Offers that boost this one" to pick up to three bumps and one upsell, each with its own price. Available on Creator and up.
A stronger help desk: reporting, macros, and fewer crossed wires.
See how your support is doing.
A new Reports page in your help desk shows ticket volume, SLA breach rate, first-response and resolution times (average, median, and 90th percentile), and satisfaction — broken down by queue and by agent over the last 7, 30, or 90 days. Export any view to CSV.
One-click macros.
Build a macro once and agents apply it in a click: post a templated reply, change status and priority, assign the ticket, and add tags all at once. Set them up under Help desk, Macros.
No more two agents replying at once.
When more than one agent has the same ticket open, each sees a live "also viewing" banner — so your team stops tripping over each other.
Tickets that route themselves.
Set a queue to round-robin or fewest-open and new tickets distribute to agents automatically, instead of waiting to be claimed.
Add video lessons to your courses.
Upload a video, and it just plays.
mobieusLearn now takes a video as a lesson activity. Upload an MP4, MOV, WebM, or MKV file and Mobieus prepares it for smooth playback that adapts to each viewer's connection and device. No encoding settings, no separate video host. Course video is included on Pro, Creator, Creator Plus, and Sovereign.
Learners pick up where they left off.
The lesson player remembers each learner's place in a video, so they can stop and come back without losing their spot. Finishing the video marks the lesson complete.
Grade assignments, answer lesson questions, bundle courses, and cap your AI spend.
Grade essays and file uploads.
Instructors now have a grading inbox under Learn, Teach, Grading. Open any pending essay or file-upload submission, give it a score, and leave feedback. The learner's result updates the moment you save, so the two highest-value assignment types are fully usable end to end.
Ask and answer questions on any lesson.
Every lesson now has its own questions area. Learners post a question, anyone can reply, and the instructor can mark the reply that answered it. Instructors also get one view of every unanswered question across all of their courses.
Sell courses in bundles.
A single offer can now grant access to several courses at once. Buyers get every course in the bundle from one purchase, with no extra setup per course.
Put a budget on your Community Manager.
Set a monthly token budget for the AI Community Manager, get an email at 80 percent and again at 100 percent, and optionally pause new drafting when you reach the cap. A live meter shows what you have used. Pending drafts stay reviewable, and drafting resumes when the budget resets next month or you raise the cap.
The API now covers your whole platform.
The mobieusCore API reference, now at version 1.7.0, documents the full help desk surface including the AI support assists, the complete courses and learning API, and your knowledge base. Browse it at /api/docs.
Chat gets attachments. Everything gets voice messages.
Share files and images in chat rooms.
The chat composer now has a paperclip. Attach up to 4 files per message: images show inline, audio plays in place, and files like PDFs download with one click. Attachments follow room permissions, so only people who can see a room can open what is shared there.
Send voice messages in chat and DMs.
Click the mic, record up to 2 minutes, send. The clip plays inline for everyone in the conversation. Works in chat rooms, the messages page, and the messenger windows.
Direct messages arrive in real time.
New DMs now appear within a few seconds while a conversation is open, on the messages page and in the messenger windows. No refresh, no waiting. If your network blocks streaming, messaging quietly falls back to the previous behavior.
Photo galleries grow up: slideshows, photo details, versions, and smarter uploads.
Watch albums as a slideshow.
The photo viewer now has a play button. Press it and the album advances on its own, wrapping back to the start. Navigating manually or closing the viewer pauses it.
Pick your album cover.
Albums no longer lock the cover to the first photo. Open any photo and click Set as cover. A star marks the current cover in the grid.
See where and how a photo was taken.
Click the info icon on a photo to see camera, lens, date taken, ISO, aperture, shutter, and focal length. Photos with GPS data get a View on map link.
Replace a photo without losing its history.
Swap in a new version of a photo and it keeps its spot, comments, tags, and reactions. Previous versions stay available in the photo info panel.
Smarter uploads: zip extraction and duplicate detection.
Upload a .zip and the images inside are added to your album, up to 200 per archive. Re-uploading an identical photo is skipped automatically with a notice, and the rest of your batch uploads normally.
Stay signed in. Log in once, not every visit.
Your login now lasts 30 days.
Before, coming back to your community meant signing in again every time. Now you sign in once and stay signed in for 30 days, across return visits and browser restarts. You only sign in again if you sign out yourself. The same goes for every member of your community, so returning is one click instead of a login.
Your community is now protected by Cloudflare.
Network-level protection, on by default for every community.
We moved web application firewall protection to Cloudflare's global network. Every request to your community now passes through Cloudflare before it reaches our servers. That means threats are stopped at the edge, before they arrive, with no action needed from you. The Security page in your admin panel shows what is active at the host level: firewall status and any IP bans in effect.
One login for every community you run.
Manage multiple communities from a single account.
If you start a second community with an email already tied to a Mobieus admin account, the same login works for both. No duplicate accounts, no credential juggling. Switch between your communities after you sign in.
AI moderation now reads your verified members correctly.
The AI moderation assistant checks your actual mobieusVerified member list when it drafts response suggestions and flags patterns. It was checking email confirmation status instead. Fixed on every tenant with mobieusAI enabled.
Get discovered. A public catalog of Mobieus communities.
The new discover page lists the communities that opt in.
Turn it on under Admin, write a one-line pitch, and pick a topic. Your community then shows up at mobieus.io/discover with a member count and a link to join. People looking for a community can filter by topic, free or paid, and size. Opt-in only, so nothing shows until you switch it on.
mobieusAI shows up everywhere, and the community gets quicker to use.
Eight new AI helpers, each one your admins switch on.
Ask "where should I post?" and get sent to the right forum. Read a one-line briefing of what changed since your last visit, or catch up on your notifications, your bookmarks, and the people you follow in a sentence. Finish a rough draft, polish your bio, or break the ice with a member you have not talked to in a while. Every helper is off by default and runs on your community's own API key.
Forums show you what is alive.
Every forum now lists its latest thread, who posted it, and when. Type to filter the list down to the forum you want, and the ones with new activity float to the top.
A home page that leads with what needs you.
Your dashboard opens with what changed since last time. Notifications filter to unread in one tap. Friends, following, bookmarks, and drafts now act in place, with no page reloads.
More ways to make your name your own.
Five new animated username styles, two new badges, and a cleaner cosmetics shop. Every style stays readable on all seven themes, light or dark.
mobieusAI — the assistant tier that knows your community.
Connect your own Anthropic API key — pay model fees directly.
mobieusAI is bring-your-own-key. Tenant admins drop in an Anthropic API key at /admin/ai/settings and every AI feature on the platform routes through it. No Mobieus markup, no per-seat metering — you see Anthropic's real usage on your own bill.
Moderation AI — first-pass triage on every report.
Reports queued for moderators now arrive with an AI-suggested category, a draft response your mods can edit before sending, and pattern-detection that turns repeat offenses into proposed content rules. Mods stay the decision-makers; the AI just removes the staring-at-a-blank-form step.
Admin AI — the analytics dashboard explains itself.
Spend ten seconds asking "why did new-member sign-ups drop on Tuesday" instead of staring at a chart. Admin AI reads the metric, the period, and the context, then explains in plain language with links back to the underlying activity.
Member AI — assistant grounded in the community knowledge base.
Members ask questions and get answers stitched together from your forums, mobieusKnow articles, and pinned threads — with citation links back to the source. Retrieval is full-text search against your own tenant DB; no third-party vector store, no external indexing.
mobieusHelp catches up on the features tenants actually use.
Notification preferences — every event, opt-in or opt-out.
Every helpdesk event now respects per-tenant defaults, per-agent overrides, and per-requester overrides. Quiet a noisy event without losing the important ones; agents stop drowning in status-changed emails the moment they don't want them.
Tags on tickets.
Per-tenant tag library with colored pills. Agents attach + detach from any ticket page; the rules engine can read tags to drive automation; queue listings filter by tag.
Canned responses.
Per-tenant template library with markdown bodies and ticket-aware placeholders ({{requester.first_name}}, {{ticket.reference}}, {{queue.name}}, etc.). Agent reply composer picks one and substitutes at insert time. Use count tracks which templates earn their keep.
Knowledge-base deflection on the public portal.
The portal new-ticket form quietly searches mobieusKnow as the requester types. Top 3 matches render under the form; one click on This solved my problem closes the form and opens the article. The admin dashboard shows the 30-day deflection count — direct measure of mobieusKnow saving the team time.
Custom fields per help topic.
Each help topic defines its own schema: text, number, URL, email, date, select. The portal renders the right inputs when the topic changes; required fields block submission; agents see + edit the values in a card on the ticket page.
Collaborators.
Add extra agents or external requesters to any ticket. Every notification fans out to them, gated by their own preferences. Removes the back-channel email workaround for "loop in legal" or "copy the supplier."
Tasks on tickets.
Sub-items with assignee + due date. Agent dashboard tile lists open tasks across every ticket the agent is responsible for; overdue dates render red.
SLA with business hours.
Per-tenant business-hours profiles (timezone + weekly schedule + holidays). Per-tenant SLA plans (first-response + resolve budgets). A 2-minute worker re-materializes each ticket's SLA state — on-track, warning at 75% consumed, breach past due — and writes an audit row on every transition.
Rules engine.
Condition + action automation on 5 triggers (on_create, on_reply, on_status, on_assign, on_tag). JsonLogic-subset conditions read ticket / queue / topic / tags / requester data; actions can set priority, attach tags, move queues, reassign, swap SLA plans, change status. Every run is logged; one bad rule never breaks the trigger.
Reply by email.
Customers reply to a notification email and the message lands on the ticket as a requester message. Provider webhook receives, the worker dedups by Message-ID, parses the ticket reference from the subject (or In-Reply-To headers), and posts within 60 seconds. Postmark, Mailgun, and Amazon SES inbound-parse payloads supported out of the box.
mobieusHelp launches — built-in help desk goes native.
Tickets, queues, and a requester portal live inside your community.
The mobieusHelp help desk now runs natively on Mobieus. Open tickets from inside the platform at /help/agent. Set up queues, help topics, and per-queue agent roles at /admin/helpdesk. External requesters open tickets at a public portal that verifies their email with a magic link. Pro plan and above.
Per-queue role-based access control.
Three built-in roles — admin, supervisor, agent — gate every action: view, reply, internal note, change status, close, reopen, assign, move queue, delete. Grant tenant-wide or scope to one queue. Agents who can't close a ticket don't see a Close button.
Move tickets between queues with an audit trail.
An admin can re-home a ticket on a different queue. The system issues a new per-queue reference number, posts a system event to the thread so the requester sees the move, and writes an audit row.
Real email notifications.
The team is "Support" in every outbound — never an individual name. Requesters get a magic-link receipt when they open a ticket from the portal, an acknowledgement when verified, a notification with excerpt when an agent replies, and a notification only on resolved or closed transitions. Internal notes never escape.
Audit log under /admin/helpdesk/audit.
Every queue creation, role grant, status change, and reply is recorded. Filter by event type, paginated 50-per-page.
Knowledge base integration.
The portal can deep-link into mobieusKnow articles via a new JSON search endpoint at /api/know/search. A follow-up release uses this for in-portal deflection.
mobieusChat launches on every tier, mobieusCredits get a Stripe top-up, cosmetics shop reworked.
mobieusChat is live on every Mobieus tenant.
Real-time chat rooms ship alongside forums on every tier. Rooms with separate Read and Chat role gates, mentions wired to notifications, reply pills with quoted context, custom emoji per tenant, a dedicated GIF picker, and member cosmetics rendered in every bubble. Enabled by default; tenant admins can disable per-tenant at /admin/config#section-features. Read the launch and the mobieusChat product page.
mobieusCredits: top up your wallet via Stripe.
Members already earn credits by participating. Now they can top up the wallet directly from /account/cosmetics in three packs: 1,000 credits for $1, 6,000 for $5, 13,000 for $10. One-tap Stripe Checkout, credits land in the wallet within seconds. Bigger packs earn a better per-dollar rate. Works on every tier. Read the launch.
Standalone GIF picker in mobieusChat.
The bold GIF button next to the smiley face opens a full modal with a wide search input, trending preloaded, debounced search, 4-column responsive grid, Esc or click-outside to close. Pick a GIF and it lands inline in your message. Same affordance the thread editor uses.
Cosmetics shop reworked — no more lockup.
The shop now uses a tabbed catalog so only one cosmetic type renders at a time. Profile-effect previews start as static avatars with a hover hint; the particles fire only on the card you are looking at. Animated chat-bubble shaders stay idle until hover. Catalog rebuilt around the credit-pack hero at the top. Booster discounts surfaced inline. Deep-linkable via URL hash so you can bookmark a specific tab.
Edit chat rooms from /admin/chat-rooms.
Every room row has an Edit button. Rename the topic, change visibility (Public, Listed-private, Hidden), adjust Read and Chat roles independently, set slow mode. Slug is locked so existing /rooms/<slug> bookmarks keep working. To rename a slug, archive and recreate. Table redesigned: header wraps cleanly, narrow columns for the numeric values, no horizontal scrollbar, Edit and Archive stack tidily on the right.
AI Suggest for room topics.
If your tenant has the AI Community Manager enabled with an Anthropic API key, the chat-room Edit page now shows a Suggest button next to the topic field. Click it, and AI proposes a one-line topic based on the room name. Gated on the AI master switch; no AI calls happen on tenants without it.
Read role + Chat role split in /admin/chat-rooms.
Rooms can now require a different minimum role to read versus to chat. Plenty of communities want everyone to follow along while only verified members can talk. The post role auto-clamps up so it can never be looser than the read role (UI + server-side both enforce it).
Moderator-assignment form polished.
The grant-moderator form at /admin/mod-assignments now lines up horizontally even when the username field carries an autocomplete hint below it. Game Mod removed from the scope dropdown.
Plan-tier indicator on /admin/community-manager fixed.
Creator and Pro tenants were occasionally showing a red ✗ on the "Plan tier is Pro or higher" indicator. The fix backfills tenant_subscriptions for older tenants and falls back to the tenant's plan column when the subscriptions table is empty. Tenants on a plan that qualifies for AI Community Manager now show the green ✓ correctly.
Tenant control panel: SEO, analytics, verification, AI cost control, admin UX, and 20+ reliability fixes.
Tenant control: SEO + Analytics + Verification.
Tenant admins now own analytics injection (GA4, GTM, Plausible, Fathom, PostHog), Google + Bing search verification, robots.txt and llms.txt editors with auto-generated defaults, and a dynamic sitemap built from live content with a force-refresh + IndexNow ping button. Every input runs through a single MetaTagSanitizer with 27 tests and /D-anchored regex validators that close the trailing-newline injection vector. AI bot toggle controls whether GPTBot, ClaudeBot, CCBot, Google-Extended, anthropic-ai and friends get a User-agent block. CSP allowlist for the analytics providers ships with the feature. All seven inputs land under /admin/branding. Read the deep dive →
AI cost control: pick your Claude model per tenant.
New dropdown in /admin/branding picks Haiku ($1/$5 per million in/out tokens), Sonnet ($3/$15), or Opus ($15/$75). Default is Haiku. Per-feature overrides let power users pay more for moderator report explanations and less for tag suggestions. 30-day spend dashboard breaks cost down by feature with sparklines, plus an alert if spend triples week-over-week. Free-tier off-switch kills API calls entirely while keeping the UI usable. Read the deep dive →
/admin/config v3 redesign.
New sidebar nav, sticky save bar with per-section dirty badges, fuzzy search across every setting, recent-changes timeline, and a diagnostics panel that surfaces missing optional dependencies. The native browser "unsaved changes" dialog no longer fires when you save (suppressed via a one-tick beforeunload flag). Behavior-equivalent to the old page; the layout is the change.
/admin/iptables v3 redesign.
Card-based layout for active rules, drag-to-reorder, inline edit, color-coded chains, and an "explain this rule" panel that translates each iptables line into plain English. Bulk-disable for testing. Confirmation modal before any deletion.
Admin UX overhaul (everything else).
Username autocomplete on 13 admin and moderator inputs, sharing one component so the search behavior is identical everywhere. /admin/mod-assignments grant-form is now a horizontal row instead of a stacked column. Broadcast email default flipped from opt-in to opt-out so a missed checkbox no longer skips the active membership. /admin/email no longer 404s; it aliases to /admin/digest. Submit buttons no longer get disabled synchronously inside the submit handler, which previously stripped multi-button form values on Safari.
SEO + AI search readiness.
Bulk JSON-LD pass: SoftwareApplication schema on the 4 product pages (mobieuscore, mobieushelp, mobieuslearn, mobieusknow), BreadcrumbList on 41 pages, dateModified + image + Engineering byline on 18 existing blog posts. Branded 404 page with the right design language. Three new dedicated comparison pages at /compare/circle, /compare/skool, /compare/mighty. Sitemap rebuilt from git mtime so lastmod reflects actual change dates. Brand alt text standardized across the marketing site; stale sameAs links stripped. Support tenant now serves a dynamic /sitemap.xml from live content with an AI bot allow toggle. Robots.txt now whitelists /css-reference (was accidentally Disallowed) and the new path is in the sitemap.
Reliability fixes.
PairMatcher PDO HY093 fixed by binding placeholders per-iteration instead of reusing them across the loop. AI moderation button on /admin/moderation now passes the right report schema to AiReportExplain instead of choking on a missing field. IndexNow keyfile auto-generates the first time you save the key, so the verification ping does not 404 on first submit. /api/docs from www now 301s to support.mobieus.io/api/docs (nginx-level). Tenant meta-verification injection runs through the same MetaTagSanitizer and prevents lookalike token characters and CRLF injection at the input layer.
Admin/branding reconciliation.
Analytics + SEO + verification settings moved from /admin/config to /admin/branding (where brand decisions belong). Legacy keys consolidated. One-off migration ran across all three live tenants with dry-run, single-tenant, and all-tenants modes plus diff-against-dry-run verification. Bookmarks to the old config tab 301 to the right place for 30 days.
Wiki upgrades: review queue, rollback, recent updates.
New /know/queue surfaces pending edits side-by-side with the current body via a real LCS diff. Approve and reject use themed modals (no native browser dialogs); rejected contributors get the reason in their in-app notification. Article history pages add a Restore button that creates a new approved revision with the old body and flips intervening approved revisions to rolled_back in a transaction (history is preserved). The /know landing now opens with a collapsable Recent Updates hero listing the 8 most recently approved revisions with author and relative time. Trust gating: role 4+ and explicit moderators auto-approve, plus trusted contributors (mobieusVerified subscribers, or 30 days + 5 approved edits).
Mobile UI parity: 9 new surfaces + 3 bugs + polish.
Past events now render in mobile /events even when nothing is upcoming. Notification badge clears instantly after Mark all read (was waiting 30s for cache to expire; controller now busts cache and a new JS module clears the DOM in-place). Cosmetics page renders proper labels and Activate/Deactivate buttons. New mobile templates: /know index/show/search/tag/history/editor, /admin dashboard, /admin/moderation, /admin/community-manager. Pull-to-refresh on 12 surfaces. Bottom-tab hit targets raised to 56px with focus-visible outlines. Moderation queue rebuilt as a mobile-first kanban with status filters and a stale-24h warning stripe.
Email plumbing: broadcasts actually arrive.
Three coupled bugs were silently dropping broadcast emails. First, the template path the controller used (emails/broadcast) did not exist; second, processQueue had no per-row try/catch so one bad row killed the whole batch and left every later pending row stuck at attempts=0; third, the cron file that drains the email queue was never installed, so even valid rows sat forever. New broadcast.php template ships in the dark-themed shell, the controller now uses the right name, per-row try/catch isolates failures, and a new cron drains the queue every minute on each tenant. Also fixed: forum reply notification CTA was white text on a near-white background; now a brand-blue button.
Pricing tier CTAs aligned.
Pricing tier cards rebuilt as flex columns with the bullet list growing to fill remaining space; CTAs now sit on the same baseline across all tier cards (Starter, Pro, Creator, Creator Plus, Sovereign) regardless of bullet count.
Events get RSVPs, capacity, waitlists, reminders, recurring schedules, and iCal export.
One-tap RSVPs with capacity and waitlists.
Members tap Going, Maybe, or Not going on any event. Set a capacity and the waitlist auto-forms once seats fill; when someone cancels, the next person on the waitlist gets promoted automatically and emailed "you're in." Guests-per-RSVP supported up to 9.
iCal export — add to calendar in one click.
Every event detail page has an "Add to calendar" button that downloads a standards-compliant .ics file. Works with Google Calendar, Apple Calendar, Outlook, and anything else that reads iCalendar. Honors the event's timezone with TZID.
Reminder emails at 24h and 1h before.
RSVPed members get a reminder 24 hours and 1 hour before an event starts. Email includes the event time in the event's timezone plus the iCal link, so guests can pivot to their calendar app from the email. Per-tenant cron-driven; no admin configuration required.
Recurring events without the spreadsheet.
Set up daily, weekly (with specific weekdays), monthly, or yearly events from the same form. Pick an "until" date or a count, and Mobieus generates the series — capped at 52 occurrences per parent to prevent runaway. Editing a parent rebuilds the series; deleting cascades to all occurrences.
Timezone-aware display everywhere.
Every event has an IANA timezone (default UTC). Lists, admin tables, and detail pages all render in the event's timezone with a small "(in EVENT_TZ)" note when the viewer's timezone differs. Searchable timezone picker on the create/edit form covers Americas, Europe, Asia, Africa, Australia, Pacific, and UTC.
Attendee list, privacy-gated.
Going members appear as an avatar grid on the event detail page. Visible to other attendees, the event submitter, and admins — not to anonymous visitors. Up to 24 avatars shown with a "+N more" link. Read the deep dive →
Light-mode contrast pass.
Added missing --color-bg-elevated and --color-accent values to the light theme. Any component that uses an "elevated" surface — RSVP buttons, recurrence chips, timezone picker, badges across the platform — now renders with proper light-mode contrast instead of falling back to the dark theme's value.
Mobile pull-to-refresh, mobile file downloads, full PWA with offline support, and refreshed Privacy + Terms.
Pull-to-refresh on every page.
Touch devices now get a pull-to-refresh gesture site-wide. Threshold 80px, animated rounded indicator at the top center, label flips to "Release to refresh" past threshold. Gated by the (pointer: coarse) media query so desktop pointers are unaffected. Opt out per-page with data-no-ptr on any ancestor element. Read more →
File downloads work on mobile.
The desktop-only gate was lifted on /files/free-download/{id} and /files/download/{id}. Tapping a file link on a phone now streams the file directly. The emulator runtime is still desktop-only because mobile cannot drive the emulator's keyboard input.
Full PWA upgrade with offline support.
New manifest.json (was 404), rewritten sw.js, and a new branded /offline.html fallback. HTML navigation goes network-first with offline fallback; static assets are cache-first. Members on Android Chrome will see an install prompt; iOS members can Share → Add to Home Screen. Pages you have visited recently still load when the network drops, then auto-reload on reconnect.
Privacy Policy and Terms of Service refreshed.
Both documents rewritten end-to-end to cover every shipped feature (REST API, webhooks, AI features, mobieusMarket, file uploads, moderation, custom domains, SAML/SSO) and to comply across jurisdictions (GDPR, UK GDPR, CCPA/CPRA, PIPEDA, Québec Law 25, LGPD, APPI, DPDP, AU Privacy Act, PIPL). Subprocessors named. Indemnification, liability cap, warranty disclaimers, arbitration + class waiver, Wyoming exclusive forum. Read at /privacy and /terms.
Public API expansion, plan gate, and a site-wide UI overhaul.
Public API expanded to 4 new resource families.
Added GET /api/v1/listings, /api/v1/files, /api/v1/reports, and /api/v1/moderation/actions plus two writeable endpoints (POST /reports/{id}/dismiss and /resolve). Eight new public event types fire through webhooks: listing.created/updated/sold/withdrawn, file.uploaded, report.created, report.resolved, and moderation.action_taken. Four new scopes: listings:read, files:read, reports:read, reports:manage. OpenAPI bumped to 1.2.0 at /api/docs.
Plan gate on the public API.
The REST API and outbound webhooks are now available on Pro, Creator, Creator Plus, and Sovereign. Starter tenants get 403 plan_gated with the current and required plans named in the error envelope. Upgrade in /admin/billing and the API lights up immediately, no key re-mint needed.
Rate-limit knobs moved into the admin UI.
Per-key override at /admin/api-keys/<id>/edit. Tenant-wide default at /admin/api/settings. Three-layer precedence (per-key → tenant default → platform default). Every API response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers.
Marketing site overhaul.
New homepage with floating product cards, social-proof strip, 5-product showcase, solutions split, and 4-tier pricing teaser. Five new product pages: /product/mobieuscore, /mobieushelp, /mobieuslearn, /mobieusknow, /api. Two new hub pages: /compare and /migrate. Pricing rewritten with a 22-row feature matrix. Customers, FAQ, About, Contact, Security, Data ownership all refreshed.
New nav with megamenu + mobile drawer.
Glass header with hover-drop megamenus on desktop, full drawer on mobile. New "Developers" footer column linking the API docs, API guide, and webhooks quickstart.
10 branded 3D hero illustrations.
About, pricing, contact, FAQ, security, blog, changelog, privacy, terms, and a new "Getting started in 90 seconds" homepage section each got a brand-consistent purple/blue 3D illustration. WebP at 1200px q86 (averaging 30-90KB each, down from 1.4MB PNG sources).
SEO and structured data.
Sitemap rebuilt with 38 URLs. JSON-LD added: Organization + Product + AggregateOffer on the homepage; Product+Offers on /pricing; FAQPage on /faq; TechArticle on /product/api. Every page now has canonical, OG, and twitter:card meta.
Public REST API and webhooks, AI-assisted features, and a white-label digest builder.
Public REST API.
Programmatic access to your tenant's events, users, posts, and webhooks. Bearer auth with hashed API keys (live and test environments), scoped to read-only or write per key, cursor-paginated event log, per-key rate limits, and an OpenAPI 3.1 spec rendered as readable Redoc at /api/docs. Tenant data is isolated by connection, not by filter, so a key minted in tenant A cannot read tenant B even on the same control plane.
Outbound webhooks with HMAC signing.
Subscribe a URL to any event type or use the wildcard subscription. Every delivery carries a Mobieus-Signature header (HMAC-SHA256 with timestamp), an async queue with exponential-backoff retry (0, 1, 5, 30, 120, 360, 1440 minutes), per-endpoint failure auto-disable, per-attempt diagnostics, and one-click replay from /admin/webhooks. Rotating the signing secret keeps a dual-signed grace window so your receiver can roll over without downtime, and the SSRF guard rejects internal addresses at both registration and delivery to defeat DNS rebinding.
AI-powered features.
Optional, gated by an admin toggle and your Anthropic key. Long-thread summaries with key-point extraction, suggested tags for new threads, search synthesis on the results page, and one-click explanations of moderator reports. Every output is cached per source hash so the same input does not bill twice.
White-label email digest builder.
Customize the daily and weekly digests your members get: header image, intro and outro copy, brand color, CTA, featured threads, and per-section toggles for your-forums, top posts, active threads, new files, upcoming events, and new members. Live preview while you edit. Test-send to yourself before the schedule fires.
Admin dashboard sparklines.
Actionable dashboard metrics with 30-day sparklines for sign-ups, posts, sign-ins, and moderation actions. Stripe-style health card surfaces webhook delivery success rate, pending and dead queue depth, and average latency.
Member-facing redesigns.
The /friends, /messages, /achievements, /stats, /online, and /collections pages got functionality and polish passes. Friends gained tabs for muted and blocked, suggestions based on shared forums, search and sort, and polished cards. Messages added a conversation sidebar and persistent unread indicators. Achievements added rarity tiers, leaderboards, and admin grant and revoke. Stats added a leaderboards section.
Markdown help upgraded.
The /help/markdown page got an interactive playground (type left, see render right), a sticky table of contents, and a side-by-side syntax reference for everything the editor supports.
Platform-wide UI redesign, photo albums, and events calendar.
55+ templates redesigned.
Every major section received a visual overhaul: polished card grids, hero headers, responsive layouts, hover effects, empty states, and consistent design tokens across both dark and light themes.
Photo albums with lightbox.
Full photo gallery system with personal and community albums, privacy controls (public, members, friends, only me), drag-and-drop upload, full-screen lightbox with keyboard navigation, emoji reactions, inline comments, and photo tagging with username autocomplete.
Events calendar redesigned.
Events page with date badge cards grouped by month, event detail pages with markdown descriptions, submit and edit forms with WYSIWYG editors, archive with pagination, and an admin approval queue with pending and upcoming views.
Collections and bookmarks redesigned.
Collection cards with type icons, modal create/edit, unified item list with per-type icons (threads, posts, files, listings, events, photos, guides). Bookmarks page with search and type filter. Collections now support guides, photo albums, and photo items.
Platform topic hubs redesigned.
Topic hub directory with responsive card grid and umbrella grouping. Individual hub pages with editorial sections, FAQ accordion with smooth animations, latest threads and files widgets, cross-link pills, and related platforms grid. Admin management with tab strip navigation.
Member directory redesigned.
Avatar card grid with role badges, verified checkmarks, location display, and search by name, username, role, or location.
Feed cards streamlined.
Feed card headers show thread title left-justified and forum name with relative time right-justified on one line.
Events added to admin nav.
The events approval queue is now linked in the admin Community dropdown. Previously only accessible by direct URL.
Display names, phone formatting, and admin user management.
Display names replace raw usernames.
When a member has set their first and last name, that name now appears across threads, posts, feeds, and profiles instead of the raw username. Email-based usernames are stripped of the @domain portion for privacy.
Phone number auto-formatting.
The phone field on account settings auto-formats as you type based on the selected country. US and Canada get +1 (NNN) NNN-NNNN, UK gets +44, Australia +61, Mexico +52, with formatting characters inserted automatically.
Consolidated admin user management.
The admin user detail and edit pages are merged into a single tabbed view: Profile, Identity, Moderation, and Activity. Managing a user no longer requires navigating between separate pages.
Data export requests notify platform admins.
When a member requests a data export, an escalation is sent to platform admins with full context so the request can be tracked and fulfilled.
Push notifications provisioned automatically.
VAPID keys for web push notifications are generated and configured during tenant provisioning. Push notifications work out of the box for new tenants.
White Label add-on.
Pro, Creator, Creator Plus, and Sovereign tenants can remove the "Powered by mobieus.io" attribution from the site footer and transactional emails with the White Label add-on ($30/month, custom domain required).
Account settings reorganized.
Settings tabs reorganized so each section gets its own tab. Profile, Personal Info, Privacy, Appearance, Password, Email, Sessions, Notifications, and Your Data.
Default theme for new users.
Tenant admins can set the default theme applied to new accounts and guest visitors from Admin > Config > Site. Members can still change their own theme.
CSS custom properties reference.
New page at /help/css-reference documents every CSS variable available for customization with live color swatches, grouped by type. Linked from the Custom CSS editor in admin branding.
mobieusMarket redesigned.
All marketplace pages redesigned with icon headers, stat summary cards, color-coded feedback metrics, display names, and quick-link navigation.
Friends and Following open in a modal.
Friends and Following in the user menu now open in an inline modal with avatars and display names. Quick access without leaving the current page.
Forum navigation dropdown redesigned.
Quick-action strip (Browse, Unread with count badge, Create) at the top. Categories with icons and forum counts. Trending and Stats links at the bottom. Compact single-column layout.
Search by name or username everywhere.
Every input that accepts a username now searches by display name too. Autocomplete shows matching suggestions with names and @usernames side by side.
Admin config page reorganized.
Nine config tabs consolidated to five: Site, Access, Features, Payments, and Advanced. Environment settings grouped into collapsible categories with icons.
Admin and mod dashboards redesigned.
Clickable stat cards with hover effects and icons on the admin dashboard. Quick-links bar for all admin sections. Mod dashboard shows escalation, report, restriction, and action counts at a glance with color-coded summary cards.
Name dropdown, profile, and feed redesigned.
User menu dropdown rebuilt with identity card, quick-action strip, and prominent admin buttons. Profile page streamlined with inline bio and icon details row. Feed sort tabs have icons and a Browse Forums button.
Forum and thread pages reorganized.
New Thread button moved to the top of the forum page. Search and sort consolidated into one row. Thread post actions reduced to six primary buttons with less-used actions in an overflow menu.
Sessions show device and location.
The Sessions tab now shows where you are logged in by device type and geographic location (city, state, country) instead of raw session data. Current session is highlighted. End any other session with one click.
Course monetization and help desk.
Sell unlimited courses with zero platform fees.
Creator, Creator Plus, and Sovereign tenants can sell access to mobieusLearn courses using Stripe Checkout. Set a price, publish to the course catalog, and let members purchase directly. Zero platform fees on course sales. Stripe charges its standard processing rate.
Built-in help desk on Pro and above.
mobieusHelp ships as a full help desk inside every Pro, Creator, Creator Plus, and Sovereign tenant. Ticket management, SLAs, automation rules, knowledge base, multi-department routing, email integration, canned responses, and unlimited agents. No per-agent fee.
Custom domain support on Pro.
Pro tenants and above can now map a custom domain (e.g. community.yoursite.com) to their Mobieus tenant. Two DNS records, automated TLS, five minutes to set up.
Native member-admin tools.
Manage member identity from the tenant admin.
Tenant admins can now change member emails, passwords, MFA status, and identity claims directly from the admin surface. No deep-linking out to mobieusID for routine ops.
Bulk identity operations.
Suspend, restore, or reset MFA on multiple users in one operation. A per-tenant rate limit guards against bulk-action abuse. The audit log captures every batch.
Content filter groups.
Three-scope regex content filters.
Define content filters at the global, per-category, or per-forum level. Regex pattern matching with match-and-flag, match-and-censor, or match-and-shadow-ban actions. Forum moderators manage scope-appropriate filters without admin escalation.
Per-member data export.
Members request their own data zip.
Every member can request a single-use zip of their profile, posts, threads, private messages, achievements, and credits from their account settings. Seven-day download window, rate-limited to one per week per member. Honors GDPR subject-access requests without admin involvement.
Accessibility assist on image uploads.
Suggested alt text on upload.
When members upload images to posts, the post composer surfaces suggested alt text the member can accept or edit. Improves accessibility of community content without requiring moderator review.
Site pages: legal and community guidelines.
Tenant-managed legal pages.
Manage Terms of Service, Privacy Policy, Community Guidelines, mobieusMarket Rules, and Sweepstakes Rules from the admin panel. Versioned, with the active version surfaced in the member footer.
Security digest.
Daily WAF block summary.
A daily digest of ModSec WAF blocks reaches the tenant admin inbox: counts by rule, top blocked IPs, top blocked user-agent patterns. Quick read for the operator who wants to know what hit the door overnight.
