# NodeBB/NodeBB

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nodebb-nodebb).**

14,973 stars · 2,933 forks · JavaScript · gpl-3.0

## Links

- GitHub: https://github.com/NodeBB/NodeBB
- Homepage: https://nodebb.org
- awesome-repositories: https://awesome-repositories.com/repository/nodebb-nodebb.md

## Topics

`community` `forum` `javascript` `mongodb` `node` `nodebb` `nodejs` `postgresql` `redis` `socket-io` `websockets`

## Description

NodeBB is a real-time, self-hosted community forum platform built on Node.js. It is designed to support scalable discussion environments by utilizing a document-oriented database for content storage and an in-memory engine for high-speed data retrieval and session management. The platform provides a comprehensive administrative interface for managing user groups, forum settings, and system health.

What distinguishes the platform is its native support for federated social networking via the ActivityPub protocol, allowing forums to exchange content, synchronize discussions, and interact with decentralized platforms across the fediverse. It features a highly modular architecture that relies on an event-driven plugin system, enabling administrators to inject custom logic, modify data flows, and extend functionality through themes and server-side hooks.

The platform includes a robust suite of operational tools for managing the full application lifecycle, including automated system upgrades, process health monitoring, and multi-process scaling to handle concurrent traffic. It also offers extensive customization options for the user interface, including dynamic template rendering, widget management, and support for multi-language localization.

The software is designed for deployment across diverse environments, supporting containerized setups and various cloud platforms. It includes built-in mechanisms for database backups, asset archiving, and traffic orchestration through reverse proxy integration.

## Tags

### Content Management & Publishing

- [Forums & Communities](https://awesome-repositories.com/f/content-management-publishing/content-aggregation-curation/forums-communities.md) — Provides a scalable, self-hosted community forum platform for threaded discussions and user interaction.
- [Document-Oriented Forum Engines](https://awesome-repositories.com/f/content-management-publishing/content-aggregation-curation/forums-communities/document-oriented-forum-engines.md) — Stores user-generated content and community data in a document-oriented database for flexible and scalable management.
- [Content Aggregators](https://awesome-repositories.com/f/content-management-publishing/content-aggregation-curation/content-aggregators.md) — Collects and displays discussions from followed users across external platforms into a single curated feed. ([source](https://docs.nodebb.org/activitypub/world/))

### Networking & Communication

- [ActivityPub Implementations](https://awesome-repositories.com/f/networking-communication/activitypub-implementations.md) — Provides native support for the ActivityPub protocol to enable federated social networking and content exchange across the fediverse.
- [Node.js Forum Platforms](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/communication-platforms/real-time-collaboration-suites/forum-software/node-js-forum-platforms.md) — Provides a real-time discussion platform built on Node.js that supports federated content exchange and modular plugins.
- [Application Layer Load Balancing](https://awesome-repositories.com/f/networking-communication/application-layer-load-balancing.md) — Distributes incoming traffic across multiple application instances to improve capacity and handle high request volumes. ([source](https://docs.nodebb.org/configuring/proxies/nginx/))
- [Discussion Broadcasters](https://awesome-repositories.com/f/networking-communication/broadcast-messaging-channels/automated-broadcasting/discussion-broadcasters.md) — Automatically distributes new topics and replies to remote followers to ensure content reaches external audiences. ([source](https://docs.nodebb.org/activitypub/fep/1b12/))
- [PubSub Messaging Systems](https://awesome-repositories.com/f/networking-communication/pubsub-messaging-systems.md) — Uses a PubSub-based message broker to synchronize state and session data across distributed application instances.
- [Traffic Routing](https://awesome-repositories.com/f/networking-communication/traffic-routing.md) — Directs incoming requests to specific application paths to allow multiple services to share a single domain. ([source](https://docs.nodebb.org/configuring/proxies/apache2.2/))
- [Reply Integrations](https://awesome-repositories.com/f/networking-communication/activitypub-implementations/reply-integrations.md) — Provides standardized collections of direct responses to posts for external discovery and threaded display. ([source](https://docs.nodebb.org/activitypub/fep/7458/))
- [Context Synchronization Services](https://awesome-repositories.com/f/networking-communication/context-synchronization-services.md) — Resolves external collection URLs to parse and organize remote objects into local discussion topics. ([source](https://docs.nodebb.org/activitypub/context/))
- [Email Notification Services](https://awesome-repositories.com/f/networking-communication/email-notification-services.md) — Integrates with external email services to ensure reliable delivery of system notifications to users. ([source](https://docs.nodebb.org/configuring/plugins/emailers/))
- [WebSocket Managers](https://awesome-repositories.com/f/networking-communication/websocket-managers.md) — Handles real-time bidirectional communication by proxying WebSocket connections through the web server environment. ([source](https://docs.nodebb.org/configuring/proxies/apache/))

### Web Development

- [Federated Social Servers](https://awesome-repositories.com/f/web-development/federated-social-servers.md) — Provides native support for federated social networking via the ActivityPub protocol to exchange content and synchronize discussions across the fediverse.
- [Federated Content Sharing](https://awesome-repositories.com/f/web-development/federated-social-platforms/federated-content-sharing.md) — Shares posts and interactions with other platforms using standardized protocols to enable cross-platform communication. ([source](https://docs.nodebb.org/activitypub/fep/))
- [Reverse Proxies](https://awesome-repositories.com/f/web-development/reverse-proxies.md) — Routes incoming web traffic through a reverse proxy to handle load balancing and SSL termination. ([source](https://docs.nodebb.org/configuring/proxies/))
- [Social Actor Federation](https://awesome-repositories.com/f/web-development/federated-social-servers/social-actor-federation.md) — Exposes forum categories as social actors that synchronize discussions and follow relationships across the decentralized web. ([source](https://docs.nodebb.org/activitypub/fep/1b12/))
- [Category Federation Policies](https://awesome-repositories.com/f/web-development/federated-social-platforms/federated-content-sharing/category-federation-policies.md) — Manages the visibility and interaction of discussion categories with external platforms via federation privileges. ([source](https://docs.nodebb.org/activitypub/privileges/))
- [Content Ingestion Handlers](https://awesome-repositories.com/f/web-development/federated-social-platforms/federated-content-sharing/content-ingestion-handlers.md) — Parses incoming public activity into forum posts and topics, automatically organizing them into categories. ([source](https://docs.nodebb.org/activitypub/visibility/))
- [Content Transformers](https://awesome-repositories.com/f/web-development/content-transformers.md) — Intercepts raw discussion text during rendering to inject dynamic elements, convert custom markup, or modify formatting. ([source](https://docs.nodebb.org/development/plugins/parsing/))
- [Private Messaging Federation](https://awesome-repositories.com/f/web-development/federated-social-platforms/federated-content-sharing/private-messaging-federation.md) — Processes incoming private activity into direct chat rooms, automatically managing membership and message distribution. ([source](https://docs.nodebb.org/activitypub/visibility/))

### System Administration & Monitoring

- [User Profile Management](https://awesome-repositories.com/f/system-administration-monitoring/user-profile-management.md) — Provides centralized tools for managing user accounts, community groups, and profile settings to maintain platform access control and structure. ([source](https://docs.nodebb.org/admin/))

### Data & Databases

- [Data Persistence and Storage](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage.md) — Persists discussion content and user data in a document-oriented database to support scalable forum operations. ([source](https://docs.nodebb.org/configuring/databases/mongo/))
- [Data Persistence](https://awesome-repositories.com/f/data-databases/data-persistence.md) — Stores user profiles, discussion topics, posts, and global configuration settings using structured key-value pairs. ([source](https://docs.nodebb.org/development/database-structure/))
- [Redis Connectors](https://awesome-repositories.com/f/data-databases/redis-connectors.md) — Utilizes Redis as an in-memory backend for high-speed session management and real-time data synchronization across forum instances.
- [Data Storage Layers](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage-layers.md) — Persists forum content and user information by connecting to supported database backends through an abstraction layer. ([source](https://docs.nodebb.org/configuring/databases/))
- [In-Memory Databases](https://awesome-repositories.com/f/data-databases/in-memory-databases.md) — Utilizes an in-memory database engine to achieve high-speed data lookups and improved performance for large-scale discussion platforms. ([source](https://docs.nodebb.org/configuring/databases/redis/))
- [Database Backups](https://awesome-repositories.com/f/data-databases/database-backups.md) — Exports current database contents to a file or directory to ensure data can be recovered in the event of corruption. ([source](https://docs.nodebb.org/configuring/upgrade/))
- [Search and Indexing](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing.md) — Maintains a searchable index of discussion content to enable rapid information retrieval for users. ([source](https://docs.nodebb.org/configuring/plugins/search/))
- [Distributed Data Synchronization Systems](https://awesome-repositories.com/f/data-databases/distributed-data-synchronization-systems.md) — Uses a message broker to enable communication and session sharing between multiple application processes running in a cluster. ([source](https://docs.nodebb.org/configuring/scaling/))

### Security & Cryptography

- [Access Control](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control.md) — Manages user permissions and access rights for specific forum categories through defined user groups. ([source](https://docs.nodebb.org/activitypub/privileges/))
- [Panel Access Controls](https://awesome-repositories.com/f/security-cryptography/access-control/panel-access-controls.md) — Restricts access to the administrative control panel to authorized personnel to protect platform integrity. ([source](https://docs.nodebb.org/admin/))
- [TLS/SSL Configurations](https://awesome-repositories.com/f/security-cryptography/security/cryptography-and-secrets/cryptographic-primitives-management/tls-ssl-configurations.md) — Terminates SSL/TLS traffic at the proxy layer to secure communication between clients and the server. ([source](https://docs.nodebb.org/configuring/proxies/nginx/))
- [Domain Access Restrictions](https://awesome-repositories.com/f/security-cryptography/domain-access-restrictions.md) — Enforces allow-lists and deny-lists for remote domains to control federated content exposure. ([source](https://docs.nodebb.org/activitypub/settings/))

### Software Engineering & Architecture

- [Event-Driven Plugin Registries](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/hook-event-orchestration/event-driven-plugin-registries.md) — Features an event-driven plugin architecture that allows administrators to extend functionality through server-side hooks.
- [Modular Extension Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-extension-architectures.md) — Features a highly modular architecture that relies on an event-driven plugin system to inject custom logic and extend functionality.
- [Modular Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-plugin-architectures.md) — Hooks into core application events to modify data, trigger side effects, or intercept responses through a modular plugin architecture. ([source](https://docs.nodebb.org/configuring/plugins/))
- [Asynchronous Task Queues](https://awesome-repositories.com/f/software-engineering-architecture/asynchronous-task-queues.md) — Implements an asynchronous background task queue to offload heavy operations and maintain system responsiveness.
- [Custom Hook Definitions](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/hook-event-orchestration/custom-hook-definitions.md) — Defines custom event hooks within code to allow plugins to interact with or modify internal data processes. ([source](https://docs.nodebb.org/development/plugins/))
- [Asynchronous Task Processors](https://awesome-repositories.com/f/software-engineering-architecture/asynchronous-task-processors.md) — Executes custom logic in the background after specific events to maintain responsiveness without blocking the main application flow. ([source](https://docs.nodebb.org/development/plugins/hooks/))
- [Database Abstraction Layers](https://awesome-repositories.com/f/software-engineering-architecture/database-abstraction-layers.md) — Utilizes a database abstraction layer to support multiple storage backends while maintaining consistent query logic.

### DevOps & Infrastructure

- [Deployment Platforms](https://awesome-repositories.com/f/devops-infrastructure/deployment-platforms.md) — Installs and configures a real-time forum application on a server by setting up database dependencies and initializing the core service. ([source](https://docs.nodebb.org/installing/cloud/nitrous/))
- [Process Scaling](https://awesome-repositories.com/f/devops-infrastructure/process-scaling.md) — Supports multi-process scaling to distribute concurrent traffic across multiple application instances. ([source](https://docs.nodebb.org/configuring/proxies/node/))
- [Containerized Deployments](https://awesome-repositories.com/f/devops-infrastructure/containerized-deployments.md) — Orchestrates the deployment of a forum instance and its required database dependencies using containerized configurations. ([source](https://docs.nodebb.org/installing/cloud/docker/))
- [Cloud Deployment Platforms](https://awesome-repositories.com/f/devops-infrastructure/cloud-deployment-platforms.md) — Automates the provisioning and hosting of discussion software on various managed cloud infrastructure providers. ([source](https://docs.nodebb.org/installing/cloud/))
- [Platform Settings](https://awesome-repositories.com/f/devops-infrastructure/platform-settings.md) — Adjusts visual themes and functional settings through a centralized interface to tailor the platform to community requirements. ([source](https://docs.nodebb.org/admin/))
- [Self-Hosted Deployment Platforms](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-deployment-platforms.md) — Installs the application on a self-hosting platform that automates routine maintenance tasks like backups and software updates. ([source](https://docs.nodebb.org/installing/cloud/cloudron/))

### User Interface & Experience

- [Server-Side Template Engines](https://awesome-repositories.com/f/user-interface-experience/layout-utilities/presentation-engines/template-engines/server-side-rendering-engines/server-side-template-engines.md) — Employs a server-side template engine to map URL paths to views and inject dynamic data into the user interface.
- [Interface Localization](https://awesome-repositories.com/f/user-interface-experience/interface-localization.md) — Embeds dynamic variables into translated language strings to support multi-language user interfaces. ([source](https://docs.nodebb.org/development/themes/templates/))

### Development Tools & Productivity

- [Extension Managers](https://awesome-repositories.com/f/development-tools-productivity/extension-managers.md) — Installs, verifies, and removes third-party components through a centralized administrative interface or command-line tools. ([source](https://docs.nodebb.org/configuring/plugins/))
- [Interface Translation Providers](https://awesome-repositories.com/f/development-tools-productivity/interface-translation-providers.md) — Converts language keys into localized text across server-side code, client-side scripts, and templates. ([source](https://docs.nodebb.org/development/i18n/))
- [Plugin Lifecycle Management](https://awesome-repositories.com/f/development-tools-productivity/plugin-lifecycle-management.md) — Enables or disables installed extensions through a control panel or command line interface to maintain system stability. ([source](https://docs.nodebb.org/development/plugins/))
- [Version Management](https://awesome-repositories.com/f/development-tools-productivity/version-management.md) — Updates the application to a newer release or switches to a preferred version through a centralized management interface. ([source](https://docs.nodebb.org/installing/cloud/cloud9/))
