Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Default User Preferences Laravel Package

fof/default-user-preferences

A Flarum extension that lets administrators define default user preferences for new accounts, so every new member starts with the notification, privacy, and display settings your community prefers instead of Flarum's built-in defaults, while remaining free to change them later.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — important correction: despite the "Laravel/PHP" framing in the request, fof/default-user-preferences is a Flarum extension, not a Laravel package. Flarum is a PHP forum application that consumes a subset of Illuminate components, but it is not a Laravel application and this package cannot be composer required into a Laravel service. Architecture fit is therefore binary: in-fit only if the product surface is a Flarum forum; out-of-fit for any Laravel API/app/back-office codebase.

  • Mechanism: the extension is a thin settings/preference layer that flips email notification flags for replies and mentions to "on" for newly registered users (and optionally existing users, depending on version). It almost certainly works via a Flarum event listener on user creation plus a default-preferences service binding — roughly a single subscriber class plus locale/settings wiring.
  • Footprint: very small, no database schema of its own in the typical case (it writes into Flarum's existing users.preferences JSON column). Low blast radius, low coupling.
  • Integration feasibility: trivial inside Flarum (composer install + enable in admin), zero inside Laravel. If the roadmap item is "new forum users should get reply/mention emails by default," this is a one-line admin decision; the package is effectively a convenience wrapper rather than a capability unlock.
  • Technical risk: high relative to value. 6 stars, 0 dependents, single-maintainer FriendsOfFlarum community project, and a release date of 2026-10-23 that is inconsistent with a normal release history — either a metadata anomaly, a mistagged pre-release, or a forward-dated tag. Treat version provenance as unverified until confirmed against the repo's tags and composer.json constraints.
  • Key questions for the maintainer/team:
    1. Which Flarum major versions are supported (1.x vs 2.x), and what is the PHP constraint?
    2. Does it set defaults only at registration, or does it backfill existing users? Backfill changes the risk profile entirely.
    3. Is the default scope limited to replies + mentions, or does it also touch postEdited/newPost/digest flags?
    4. Are defaults applied per-locale and per-group, or globally?
    5. Is there a test suite and CI, or is this a fire-and-forget extension?
    6. Is the 2026-10-23 release date real, and what changed in it?

Integration Approach

Stack fit: only applies if we operate a Flarum instance. If our forum is Discourse/NodeBB/custom, this package is not a candidate at all — the correct action is to note the pattern (default-on reply/mention email preferences) and implement it natively.

  • If Flarum: install via Composer in the forum deployment, enable through the admin panel, verify the extension appears under Extensions with no version-constraint conflict against core and against any other notification/preference extension already installed.
  • Migration path: the critical decision is new-users-only vs. backfill. Start new-users-only (lowest risk, no consent exposure). If product wants existing users defaulted too, run a staged backfill against a copy of the users.preferences JSON, with an explicit opt-out communication, and do it in batches — mass-flipping email preferences on an existing user base is a consent and deliverability event, not a config change.
  • Compatibility checks before merge: Flarum core version pin, PHP version pin, conflicts with flarum/subscriptions, flarum/mentions, and any digest/summary extension that also writes notification defaults. Two extensions writing the same preference keys silently is the most likely failure here.
  • Sequencing:
    1. Confirm Flarum version and existing preference-writing extensions.
    2. Deploy to staging with a throwaway user; assert preferences JSON shows the expected flags on registration.
    3. Confirm outbound mail actually flows (SMTP/queue) for a mention — the extension only sets the flag, it does not guarantee delivery.
    4. Prod deploy, new-users-only.
    5. Optional: backfill decision, comms, batched script, monitoring window.
  • Fallback plan: the equivalent behavior is a small custom Flarum extension (one listener, ~50 lines). Given 0 dependents and a 6-star maintainer project, budget for this fork as the realistic long-term path rather than an emergency measure.

Operational Impact

  • Maintenance: low code surface, but maintainer risk is the dominant cost. Pin to an exact version in composer.json, mirror the repo internally (or vendor the tag), and assign a named owner. Do not take floating ^ constraints on a 6-star extension in a production forum.
  • Support: community-forum-only, no SLA, no vendor. Internal escalation must terminate at "we fork it." Factor a half-day per Flarum major upgrade to re-validate.
  • Scaling: effectively free — the work happens once per registration, not per request. The scaling concern is mail volume, not CPU: defaulting reply/mention emails on will increase transactional email and, depending on forum activity, notification-fanout load on the mail provider. Size the mail plan and rate limits against the post-change notification rate, not the current one.
  • Failure modes:
    • Silent no-op after a Flarum core upgrade (listener signature drift) — users quietly stop getting defaults; nobody notices because the absence of an email is invisible.
    • Preference-key collision with another extension, producing nondeterministic defaults.
    • Backfill executed without consent → spam complaints, domain reputation damage, GDPR/CAN-SPAM exposure for EU/CA users.
    • Metadata confusion from the anomalous 2026 release date causing an unintended version install.
    • Deliverability failures mistaken for extension failures (the extension sets intent, not delivery).
  • Ramp-up: a developer already fluent in Flarum needs 2–4 hours to install, validate, and document; a Laravel-only developer needs 1–2 days to learn Flarum's extension lifecycle first. Add ~1 day if a backfill is in scope.
  • TPM recommendation: the score gap (package score ~20 vs. opportunity ~41) indicates the capability is worth more than this artifact. Adopt only if the forum is already Flarum and only for new users; otherwise implement the behavior natively in-house and treat this repo as a reference implementation. Do not build a roadmap dependency on a 0-dependent, single-maintainer extension without a funded fork path.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package