WIP! A BB-style forum, on the ATmosphere! We're still working... we'll be back soon when we have something to show off!
node typescript hono htmx atproto
at feat/atb-48-modlog-ui 468 lines 30 kB view raw view rendered
1# phpBB Research: Features, Complaints & Lessons for atBB 2 3*Research conducted 2026-02-07* 4 5--- 6 7## Table of Contents 8 91. [phpBB Overview & History](#phpbb-overview--history) 102. [Complete Feature Inventory](#complete-feature-inventory) 113. [Common Complaints & Pain Points](#common-complaints--pain-points) 124. [Why Traditional Forums Declined](#why-traditional-forums-declined) 135. [Lessons from Modern Competitors](#lessons-from-modern-competitors) 146. [Gap Analysis: atBB vs phpBB](#gap-analysis-atbb-vs-phpbb) 157. [Recommendations for atBB](#recommendations-for-atbb) 16 17--- 18 19## phpBB Overview & History 20 21phpBB (PHP Bulletin Board) is the most widely deployed open-source forum software in history, first released in 2000. It's written in PHP and available under the GPL. 22 23### Version History 24 25| Version | Codename | Released | Key Changes | 26|---------|----------|----------|-------------| 27| 1.x | — | ~2000 | Original release | 28| 2.x | — | ~2002–2008 | Made phpBB mainstream | 29| 3.0 | Olympus | Dec 2007 | Complete rewrite, prosilver theme, security audit | 30| 3.1 | Ascraeus | Oct 2014 | Symfony adoption, extension system, AJAX | 31| 3.2 | Rhea | Jan 2017 | PHP 7 support, emoji, Font Awesome, new installer | 32| 3.3 | Proteus | Jan 2020 | PHP 7.4/8.x, extended emoji, MySQL 8 (current stable) | 33| 4.0 | Triton | Alpha Sep 2025 | Symfony 6.4, PHP 8.1+, @mentions, Cloudflare Turnstile | 34 35### Architecture 36 37- **Backend:** PHP on Symfony (since 3.1), custom template engine 38- **Database:** Supports MySQL/MariaDB, PostgreSQL, SQLite, MSSQL, Oracle 39- **Frontend:** Server-rendered HTML with prosilver theme (HTML5/CSS3), minimal JS 40- **Extension system:** Self-contained extensions installed via Admin Control Panel 41- **Search:** Multiple backends — native full-text index, MySQL FULLTEXT, PostgreSQL FULLTEXT, Sphinx 42 43--- 44 45## Complete Feature Inventory 46 47### 1. Forum Structure & Organization 48 49| Feature | Details | atBB Status | 50|---------|---------|-------------| 51| **Hierarchical categories** | Unlimited nesting of categories containing forums | Partial — `forum.category` is flat (single level) | 52| **Unlimited subforums** | Forums can contain subforums to any depth | Missing — no subforum concept | 53| **Password-protected forums** | Individual forums can require a password | Missing | 54| **Forum-specific styles** | Different visual themes per forum | Missing | 55| **Forum links** | A "forum" entry that links to an external URL | Missing | 56| **Forum rules display** | Per-forum or global rules shown at top | Missing | 57| **Topic pruning** | Auto-delete old/inactive topics by configurable criteria | Missing | 58| **Active topics display** | Most active topics shown at top of forum | Missing | 59 60### 2. Topic & Post Features 61 62| Feature | Details | atBB Status | 63|---------|---------|-------------| 64| **Topic types: Normal** | Standard topic | Implemented (post without reply ref) | 65| **Topic types: Sticky** | Pinned to top of first page | Partial — `pin` mod action exists but no display logic | 66| **Topic types: Announcement** | Pinned above stickies, shown on all pages | Missing | 67| **Topic types: Global** | Shown at top of every forum on the board | Missing | 68| **Time-limited sticky/announcement** | Auto-revert to normal after N days | Missing | 69| **Topic subscriptions** | Email/notification on new replies | Missing | 70| **Forum subscriptions** | Email/notification on new topics in forum | Missing | 71| **Topic bookmarks** | Users save topics for quick access | Missing | 72| **Post ordering** | Sort by date, alphabetical, reply count | Missing | 73| **"My posts" indicator** | Mark topics where user has posted | Missing | 74| **Printer-friendly view** | Clean print layout for topics | Missing | 75| **Email a topic** | Send topic link to friend | Missing | 76| **Unread tracking** | Track which topics/posts user has read, even across sessions | Missing | 77| **Topic split** | Moderator splits a topic into two separate topics | Missing | 78| **Topic merge** | Moderator merges two topics into one | Missing | 79| **Topic move** | Move topic to different forum (with shadow link) | Missing | 80| **Topic lock** | Prevent further replies | Partial — `lock` mod action exists | 81| **Post lock** | Lock individual posts from editing | Missing | 82| **Topic copy** | Duplicate a topic to another forum | Missing | 83 84### 3. Post Composition 85 86| Feature | Details | atBB Status | 87|---------|---------|-------------| 88| **BBCode formatting** | Bold, italic, lists, links, images, etc. | Missing — plain text only (300 grapheme limit) | 89| **Rich text / Markdown** | Formatted text in posts | Missing (noted as future work) | 90| **Smilies / Emoticons** | Inline emoji/emoticon insertion | Missing | 91| **Post preview** | Preview post before submitting | Missing | 92| **File attachments** | Upload files attached to posts | Missing (noted as future work) | 93| **Inline attachments** | Place attachments within post body with BBCode | Missing | 94| **Polls** | Create polls with multiple options, voting, time limits | Missing | 95| **Topic icons** | Visual icon next to topic title | Missing | 96| **Drafts** | Save unfinished posts for later | Missing | 97| **Post editing** | Edit your own posts after submission | Architecturally feasible (AT Proto supports updates via `putRecord` — CID changes, firehose emits update event) | 98| **Post edit history** | Track edit reasons and history | Missing | 99| **Word censoring** | Auto-replace banned words | Missing | 100| **Custom BBCodes** | Admin-defined formatting codes | Missing | 101| **@Mentions** | Mention and notify other users (phpBB 4.0 feature) | Missing | 102| **Direct media playback** | Play video/audio in post body (phpBB 4.0) | Missing | 103 104### 4. User Profiles & Identity 105 106| Feature | Details | atBB Status | 107|---------|---------|-------------| 108| **User registration** | Account creation flow | Planned — AT Proto OAuth | 109| **Social login** | Google, Facebook, etc. | N/A — AT Proto identity replaces this | 110| **Avatars** | Gallery, uploaded, remote URL | Missing — could pull from AT Proto profile | 111| **Signatures** | Text/images appended to every post | Missing | 112| **Custom profile fields** | Admin-defined extra fields (location, website, etc.) | Missing — AT Proto profiles have some | 113| **User ranks** | Title based on post count or special assignment | Missing | 114| **User badges** | Visual indicators (verified, special roles) | Missing | 115| **Post count display** | Show post count next to username | Missing | 116| **Join date display** | Show when user joined | Partial — `membership.joinedAt` exists | 117| **User online status** | Show if user is currently online | Missing | 118| **User profile page** | Dedicated page showing user info, recent posts | Missing (noted as future work) | 119| **Friends & Foes list** | Add users to friends/ignore list | Missing | 120| **User post history** | View all posts by a user | Missing (noted as future work) | 121 122### 5. Private Messaging 123 124| Feature | Details | atBB Status | 125|---------|---------|-------------| 126| **Direct messages** | Private messages between users | Missing entirely | 127| **Group messaging** | PM multiple users or groups | Missing | 128| **BCC support** | Blind carbon copy on PMs | Missing | 129| **PM attachments** | Attach files to PMs | Missing | 130| **PM drafts** | Save PM drafts | Missing | 131| **PM export** | Export/archive PMs | Missing | 132| **PM reply tracking** | Chronological PM thread history | Missing | 133| **PM notifications** | Notify on new PMs | Missing | 134 135**Note:** Private messaging may not be in scope for atBB since AT Proto has its own direct messaging infrastructure (Bluesky DMs via `chat.bsky.*` lexicons). This could be an intentional omission — users already have a DM channel through their AT Proto identity. 136 137### 6. Moderation Tools 138 139| Feature | Details | atBB Status | 140|---------|---------|-------------| 141| **Ban by username** | Ban specific user | Partial — `ban` mod action exists | 142| **Ban by IP** | Block IP address | Missing — not applicable (AT Proto is DID-based) | 143| **Ban by email** | Block email address | Missing — not applicable | 144| **Time-limited bans** | Temporary bans with auto-expiry | Partial — `expiresAt` field exists on modAction | 145| **Warning system** | Issue warnings before bans | Missing | 146| **Warning auto-escalation** | Auto-ban after N warnings | Missing | 147| **Moderation queue** | Pre-approval for new users' posts | Missing | 148| **Post approval workflow** | Require mod approval before publish | Missing | 149| **Post reporting** | Users flag posts for mod review | Missing | 150| **Report reasons** | Configurable list of report reasons | Missing | 151| **Moderator notes** | Private notes on users visible to mods | Missing | 152| **Topic split/merge/move** | Reorganize discussions | Missing | 153| **Shadow topics** | Leave redirect link when moving topics | Missing | 154| **Edit/delete any post** | Moderator override on post editing | Partial — `delete` mod action hides from index | 155| **Change post author** | Reassign post ownership | Missing — not possible with AT Proto | 156| **Moderator log** | Audit trail of all mod actions | Missing | 157| **Admin log** | Audit trail of admin actions | Missing | 158| **User action log** | Track user behavior (IP logs, etc.) | Missing | 159 160### 7. Permission System 161 162| Feature | Details | atBB Status | 163|---------|---------|-------------| 164| **Granular ACL** | YES/NO/NEVER per-permission per-user/group | Simplified — role hierarchy only | 165| **Permission types** | f_* (forum), m_* (mod), u_* (user), a_* (admin) | Simplified — `forum.role` with permission tokens | 166| **Role-based permissions** | Pre-defined permission bundles | Partial — role definitions exist | 167| **Per-forum permissions** | Different permissions per forum | Missing | 168| **Per-user overrides** | Override group permissions for individuals | Missing | 169| **Group-based permissions** | Assign permissions to groups, users inherit | Simplified — single role per membership | 170| **"Newly registered" group** | Restricted permissions for new users | Missing | 171| **Global vs local permissions** | Board-wide vs per-forum scoping | Missing | 172 173**Note:** phpBB's permission system is arguably over-engineered and a frequent source of admin confusion. atBB's simpler model (role hierarchy: Owner → Admin → Moderator → Member → Guest) is actually a feature, not a bug. The key missing piece is **per-category permissions** — the ability to restrict certain categories to certain roles. 174 175### 8. Search 176 177| Feature | Details | atBB Status | 178|---------|---------|-------------| 179| **Full-text search** | Search post content | Missing (noted as future work — Meilisearch) | 180| **Multiple search backends** | Native, MySQL FULLTEXT, PostgreSQL, Sphinx | Missing | 181| **Search by author** | Find posts by specific user | Missing | 182| **Search by forum** | Scope search to specific forum/category | Missing | 183| **Search by date range** | Filter results by post date | Missing | 184| **Unanswered topics** | Find topics with no replies | Missing | 185| **Active topics** | Find topics with recent activity | Missing | 186| **"New posts since last visit"** | Show unread content | Missing | 187 188### 9. Notifications & Feeds 189 190| Feature | Details | atBB Status | 191|---------|---------|-------------| 192| **Email notifications** | Notify on replies, PMs, etc. | Missing (noted as future work) | 193| **Jabber/XMPP notifications** | IM-based alerts | Missing | 194| **ATOM feeds** | Board-wide, per-forum, per-topic feeds | Missing (noted as future work — RSS) | 195| **In-app notifications** | On-site notification system | Missing | 196| **Digest emails** | Periodic summary emails | Missing | 197 198### 10. Administration 199 200| Feature | Details | atBB Status | 201|---------|---------|-------------| 202| **Admin Control Panel** | Comprehensive web-based admin UI | Missing — admin panel is Phase 4 | 203| **Board statistics** | User count, post count, activity graphs | Missing | 204| **Database backup/restore** | Built-in DB management | Missing | 205| **Extension management** | Install/enable/disable extensions from UI | Missing | 206| **Style/theme management** | Upload and switch themes | Missing | 207| **Language packs** | Multi-language support | Missing | 208| **User management** | Search, edit, ban, delete users | Missing | 209| **Group management** | Create/edit groups, assign members | Partial — roles exist | 210| **Mass email** | Send email to all users or groups | Missing | 211| **Forum pruning** | Auto-cleanup old content | Missing | 212| **Cron/scheduled tasks** | Background maintenance jobs | Missing | 213| **Board configuration** | Extensive settings (registration, posting, etc.) | Missing | 214 215### 11. Anti-Spam & Security 216 217| Feature | Details | atBB Status | 218|---------|---------|-------------| 219| **CAPTCHA** | Multiple CAPTCHA options (visual, reCAPTCHA) | N/A — AT Proto OAuth handles registration | 220| **Cloudflare Turnstile** | Modern anti-bot (phpBB 4.0) | N/A | 221| **Two-factor authentication** | 2FA for admins/mods | N/A — delegated to AT Proto identity | 222| **IP logging** | Track IPs per post | N/A — AT Proto is DID-based | 223| **Flood control** | Rate limiting on posts | Missing but important | 224| **New user restrictions** | Limited permissions for new accounts | Missing — could use Discourse-style trust levels | 225| **Word censoring** | Auto-filter content | Missing | 226| **Post approval queue** | Pre-moderate new user content | Missing | 227 228--- 229 230## Common Complaints & Pain Points 231 232These are the most frequent criticisms of phpBB that atBB should learn from and avoid: 233 234### 1. Spam Bots (Critical) 235phpBB is notorious for spam. Within days of installing a phpBB forum, admins report hundreds of bot registrations. The default anti-spam measures are insufficient. **atBB advantage:** AT Proto OAuth means users must have a real AT Proto identity (a PDS account), which is a significant barrier to spam bots. This is one of atBB's biggest inherent strengths. 236 237### 2. Outdated User Interface 238phpBB's default prosilver theme looks dated. The Admin Control Panel is considered user-unfriendly. Modern users expect mobile-first, clean design. **atBB lesson:** The HTMX + server-rendered approach is good, but invest in modern CSS and responsive design from the start. Don't let the UI become an afterthought. 239 240### 3. Difficult Extension/Theme Customization 241phpBB's old MOD system required editing core files, making upgrades painful. Even the newer extension system is considered harder to work with than competitors. **atBB lesson:** If an extension/plugin system is ever built, design it as a first-class API from day one. The AT Proto lexicon system already provides some natural extensibility. 242 243### 4. Overly Complex Permission System 244phpBB's YES/NO/NEVER ACL system with four permission types (forum, mod, user, admin), per-group and per-user overrides, global vs local scopes — is powerful but confusing. Admins frequently misconfigure permissions. **atBB advantage:** The simpler role hierarchy is actually better UX. Don't over-complicate it. Per-category permissions (Phase 2+) should be the ceiling of complexity. 245 246### 5. Slow Development & Modernization 247phpBB is developed entirely by volunteers. Major versions take years. phpBB 4.0 has been in development since ~2016 and is still in alpha as of 2025. **atBB lesson:** Ship MVP fast, iterate. The AT Proto foundation means the core protocol handles hard problems (identity, data ownership) and atBB can focus on forum UX. 248 249### 6. Poor Mobile Experience 250phpBB's mobile experience, while improved with prosilver's responsive updates, still feels like a desktop forum crammed into a phone. **atBB lesson:** HTMX enables progressive enhancement. Design mobile-first from the beginning. 251 252### 7. Search is Weak 253phpBB's native search indexes words, not phrases. Full-text search is basic. Large forums struggle with search performance. **atBB lesson:** Plan for Meilisearch or similar from the start (already noted as future work). Make search a core feature, not an afterthought. 254 255### 8. No Real-Time Features 256phpBB is entirely request-response. No live updates, no real-time notifications, no "someone is typing" indicators. **atBB lesson:** The AT Proto firehose subscription already provides a real-time data stream. Use this to power live topic updates via HTMX SSE or WebSocket integration. 257 258--- 259 260## Why Traditional Forums Declined 261 262Understanding why phpBB-style forums lost market share is critical for atBB's positioning: 263 264### The Migration Pattern 2651. **~2005–2010:** Social media (Facebook, Twitter) drew casual discussion away from forums 2662. **~2010–2015:** Reddit centralized niche communities under one roof with a single account 2673. **~2015–present:** Discord replaced forums for real-time community interaction 2684. **~2020–present:** Growing backlash against centralized platforms, renewed interest in self-hosted/decentralized alternatives 269 270### Why People Left Forums 271- **Friction:** Creating new accounts per forum, managing credentials, email notifications 272- **Discovery:** No way to find new communities from within the forum 273- **Single login:** Reddit/Discord offer one account for all communities 274- **Real-time:** Discord offers instant chat; forums feel slow 275- **Mobile:** Traditional forums were desktop-first 276 277### Why People Want Forums Back 278- **Searchability:** Discord conversations are ephemeral and unsearchable by outsiders 279- **Ownership:** Reddit's API changes (2023) and platform enshittification 280- **Structure:** Forums organize knowledge better than chat or feeds 281- **Permanence:** Forum threads remain useful for years; Discord messages disappear 282- **Decentralization:** Growing desire to own your community and data 283 284### atBB's Unique Position 285atBB directly addresses the core reasons forums declined: 286- **Single identity:** AT Proto DID = one identity across all forums (like Reddit/Discord) 287- **Data ownership:** Posts live on your PDS, not the forum's database 288- **Discovery:** Federation enables "common forums" features (like Discord's mutual servers) 289- **Portability:** Leave a forum, keep your content 290- **Decentralization:** Self-hosted, no central authority 291 292This is a genuinely compelling value proposition that phpBB never had. 293 294--- 295 296## Lessons from Modern Competitors 297 298### Discourse: What They Got Right 299- **Trust levels:** Automated progressive permissions (0=New → 4=Leader) reduce mod burden and scale community self-governance. New users are sandboxed; proven users earn privileges automatically. 300- **Gamification:** Built-in badges, points, leaderboards drive engagement 301- **Real-time:** Live updates, notifications, typing indicators 302- **Infinite scroll:** Modern UX pattern vs. pagination 303- **Mobile-first:** Responsive by default 304- **Markdown:** Modern text formatting instead of BBCode 305- **One-click setup:** Docker-based deployment 306 307### Flarum: What They Got Right 308- **Two-pane interface:** Browse discussions without leaving current thread 309- **Lightweight:** Fast, minimal resource usage 310- **Modern stack:** Laravel + Mithril.js 311- **Tags instead of categories:** More flexible organization 312- **Infinite scroll with memory:** Remembers scroll position 313 314### XenForo: What They Got Right 315- **Social features:** User status updates, activity feed 316- **Trophy/achievement system:** Gamification built into core 317- **Resource manager:** File/download sharing per forum 318- **Built-in media gallery:** Image/video sharing 319- **Robust search:** Elasticsearch integration 320 321--- 322 323## Gap Analysis: atBB vs phpBB 324 325### Features atBB Has That phpBB Doesn't 326 327| Feature | Description | 328|---------|-------------| 329| **Decentralized identity** | AT Proto DID — portable, user-owned identity | 330| **Data ownership** | Posts live on user's PDS, not forum's database | 331| **Portability** | Content persists even if you leave a forum | 332| **Federation** | Multiple forums can share identity namespace | 333| **Cross-forum discovery** | "Common forums" feature possible via membership records | 334| **Spam resistance** | AT Proto identity is a natural spam barrier | 335| **Protocol-level reactions** | Reactions are first-class AT Proto records | 336| **Real-time data stream** | Firehose subscription for live updates | 337 338### Critical Features atBB is Missing (Priority Order) 339 340#### P0 — Essential for MVP Parity 341These are features without which the forum would feel fundamentally broken: 342 3431. **Rich text / Markdown in posts** — Plain text only is not viable. Users expect at minimum bold, italic, links, code blocks, and lists. Markdown is the modern standard. Note: The current `maxGraphemes: 300` limit in `post.yaml` is closer to a tweet than a forum post — this constraint may need revisiting before implementing rich text (phpBB posts typically support thousands of characters). 344 3452. **Unread tracking** — phpBB tracks read/unread state per-user across sessions. Without this, users can't efficiently follow conversations. This is the #1 quality-of-life feature for forum users. 346 3473. **Topic subscription / notifications** — Users must be notified when someone replies to their topic or a topic they're watching. Without this, the forum is "post and forget." 348 3494. **User profile pages** — Display name, avatar (from AT Proto profile), post count, join date, recent posts. The building block for community identity. 350 3515. **Search** — Meilisearch integration. Forums are fundamentally knowledge bases; without search, old content is lost. 352 353#### P1 — Important for Competitive Parity 354These make the forum feel complete and usable for serious communities: 355 3566. **Topic types: Sticky/Announcement** — Admins need to pin important topics. The `pin` mod action exists but needs display logic and proper announcement/global support. 357 3587. **Post reporting** — Users need to flag rule-breaking content for mod review. This is the feedback loop that makes moderation scale. 359 3608. **Moderation queue / post approval** — New users' posts can require mod approval. Critical for preventing spam/abuse in growing communities. 361 3629. **Warning system** — Graduated enforcement before banning. Warnings → temporary ban → permanent ban. 363 36410. **Moderation log / audit trail** — Record of all mod actions with timestamps and reasons. Essential for accountability and mod team coordination. 365 36611. **Polls** — Simple voting mechanism within topics. High engagement, low implementation cost. 367 36812. **Drafts** — Save unfinished posts. Prevents lost work, improves UX. 369 37013. **Topic split/merge/move** — Core moderator workflow for organizing discussions. Without these, moderators can only lock or delete. 371 372#### P2 — Nice to Have / Differentiators 373These would make atBB stand out: 374 37514. **Trust levels (Discourse-style)** — Automated progressive permissions based on participation. Reduces mod burden, encourages good behavior. 376 37715. **ATOM/RSS feeds** — Per-forum, per-topic feeds. Low cost, high value for power users and integration. 378 37916. **Gamification** — Post count ranks, badges, achievements. Drives engagement. 380 38117. **File attachments / images** — Upload and embed media in posts. Already noted as future work. 382 38318. **@Mentions** — Notify specific users in posts. phpBB 4.0 is adding this — it's becoming table stakes. 384 38519. **Real-time updates** — Use the firehose to push new replies to open topic pages via HTMX SSE. Would be a significant differentiator over traditional forums. 386 38720. **Subforum / nested categories** — Currently categories are flat. Some communities need hierarchy. 388 389#### P3 — Future Considerations 390 39121. **Private messaging** — May be handled by AT Proto's native DM system instead 39222. **Nested/threaded replies** — Already noted as future work 39323. **Custom themes/branding** — Already noted as future work 39424. **Plugin/extension system** — Already noted as future work 39525. **Per-category permissions** — Restrict categories to certain roles 396 397--- 398 399## Recommendations for atBB 400 401### 1. Lean Into Your Strengths 402atBB's decentralized identity and data ownership model solves the fundamental problems that killed traditional forums (friction, lock-in, centralization). Don't bury this — make it the primary selling point. The "bring your identity, own your posts" story is compelling. 403 404### 2. Avoid phpBB's Complexity Trap 405phpBB's permission system is a cautionary tale. The YES/NO/NEVER ACL with four permission types is powerful but confusing. atBB's role hierarchy (Owner → Admin → Moderator → Member → Guest) is the right level of simplicity for MVP. Add per-category permissions later if needed, but resist the urge to build a full ACL system. 406 407### 3. Learn from Discourse's Trust Levels 408Discourse's automated trust system (where users earn permissions through participation) is one of the best innovations in forum software. Consider implementing a simplified version: 409- **Level 0 (New):** Just joined, posts may require approval 410- **Level 1 (Basic):** Has read some topics, can post freely 411- **Level 2 (Member):** Active participant, can flag posts 412- **Level 3 (Regular):** Trusted member, can recategorize topics, edits are instant 413- This could integrate with the AT Proto reputation model — a user's reputation across the ATmosphere could bootstrap their trust level. 414 415### 4. Markdown, Not BBCode 416BBCode is a relic. Markdown is the universal formatting language of the modern web (GitHub, Reddit, Discourse all use it). Implement Markdown with a live preview. Consider a common Markdown library that works both server-side (for rendering) and client-side (for preview). 417 418### 5. Real-Time is Your Secret Weapon 419You already have the AT Proto firehose. Use it to push real-time updates to open pages via HTMX Server-Sent Events (SSE). When someone replies to a topic you're viewing, the reply should appear without a page refresh. This would be a genuine differentiator over every traditional forum including phpBB. 420 421### 6. Don't Neglect Search 422Implement Meilisearch (already planned) early, not late. Forums are knowledge bases. The value of a forum compounds over time as content accumulates — but only if that content is findable. 423 424### 7. Mobile-First Design 425Design the HTMX web UI mobile-first. The majority of web traffic is mobile. phpBB's biggest UX failure is feeling like a desktop application on phones. 426 427### 8. Unread Tracking is Non-Negotiable 428Implement per-user read state tracking from the beginning. This is the single most important UX feature for forums. Without it, users have no way to efficiently follow conversations across multiple topics and categories. phpBB's read tracking system (storing last-read timestamps per topic per user) has been refined over 20+ years — study it. 429 430### 9. Moderation Must Scale 431Build moderation features that can scale with the community: 432- Post reporting from day one 433- Mod action audit log from day one 434- Warning system before permanent bans 435- Post approval queue for new users 436- Consider how AT Proto's decentralized nature affects moderation — users can always post to their PDS even if banned, but the AppView simply won't index their content. This is actually a cleaner model than phpBB's. 437 438### 10. The "Forum Revival" Opportunity 439There is genuine renewed interest in forum-style communities driven by: 440- Discord's poor searchability and content ephemerality 441- Reddit's hostile API changes and platform enshittification 442- Growing desire for data ownership and decentralization 443 444atBB is uniquely positioned at the intersection of "forums done right" and "decentralized social." The combination of structured long-form discussion (forums), user-owned data (AT Proto), and portable identity (DIDs) is a compelling story that neither phpBB nor Discourse can tell. 445 446--- 447 448## Sources 449 450- [phpBB Official Site](https://www.phpbb.com/) 451- [phpBB Features](https://www.phpbb.com/about/features/) 452- [phpBB History](https://www.phpbb.com/about/history/) 453- [phpBB Wikipedia](https://en.wikipedia.org/wiki/PhpBB) 454- [phpBB Permission System Docs](https://area51.phpbb.com/docs/dev/3.3.x/extensions/permission_system.html) 455- [phpBB Admin Guide](https://www.phpbb.com/support/docs/en/3.2/ug/adminguide/) 456- [phpBB 4.0 Alpha Announcement](https://blog.phpbb.com/2025/09/27/phpbb-4-0-0-a1-the-first-alpha-release-is-here/) 457- [phpBB Community: "phpBB is a very bad choice"](https://www.phpbb.com/community/viewtopic.php?t=2155257) 458- [phpBB Community: "What is the Future of phpBB?"](https://www.phpbb.com/community/viewtopic.php?t=2607651) 459- [HN: Why did phpBB forums go out of fashion?](https://news.ycombinator.com/item?id=33726098) 460- [HN: Are forum platforms dead?](https://news.ycombinator.com/item?id=32171283) 461- [Discourse vs Flarum vs phpBB Comparison](https://www.accuwebhosting.com/blog/discourse-vs-flarum-vs-phpbb/) 462- [Discourse Trust Levels](https://blog.discourse.org/2018/06/understanding-discourse-trust-levels/) 463- [Discourse Gamification Plugin](https://meta.discourse.org/t/discourse-gamification/225916) 464- [phpBB Moderation Guide](https://www.phpbb.com/support/docs/en/3.0/ug/moderatorguide/moderator_modtools/) 465- [phpBB Search Indexing](https://www.phpbb.com/support/docs/en/3.0/ug/adminguide/maintenance_search/) 466- [phpBB ATOM Feeds FAQ](https://www.phpbb.com/support/docs/en/3.0/kb/article/faq-phpbb-atom-feeds/) 467- [LowEndTalk: How did phpBB go from biggest to obscurity?](https://lowendtalk.com/discussion/208407/how-did-phpbb-go-from-the-biggest-forum-platform-on-the-block-to-relative-obscurity) 468- [Quora: Pros and cons of phpBB](https://www.quora.com/What-are-the-pros-and-cons-of-using-phpBB-for-web-forums)