README.md
NodeBB Forum Software is powered by Node.js and supports either Redis, MongoDB, or a PostgreSQL database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB takes the best of the modern web: real-time streaming discussions, mobile responsiveness, and rich RESTful read/write APIs, while staying true to the original bulletin board/forum format → categorical hierarchies, local user accounts, and asynchronous messaging.
NodeBB by itself contains a "common core" of basic functionality, while additional functionality and integrations are enabled through the use of third-party plugins.
NodeBB's theming engine is highly flexible and does not restrict your design choices. Check out some themed installs in these screenshots below:
Our minimalist "Harmony" theme gets you going right away, no coding experience required.
NodeBB requires the following software to be installed:
Installation steps vary by operating system. Please follow the official documentation links above.
Please refer to platform-specific installation documentation. If installing via the cloud (or using Docker), please see cloud-based installation documentation.
NodeBB uses a CLI-based setup and does not run via standard
npm start.
You can run NodeBB locally in two ways:
This approach helps you understand how NodeBB works internally.
Basic flow:
https://github.com/NodeBB/NodeBB.gitcd NodeBB ./nodebb setup./nodebb startDuring setup, you will configure:
Requires Docker to be installed: https://docs.docker.com/get-docker/
Run:
docker-compose up
This will start NodeBB along with required services at: http://localhost:4567
For more details, see: https://docs.nodebb.org
It is important to ensure that your NodeBB and database servers are secured. Bear these points in mind:
bind_address to 127.0.0.1 so as to restrict access to the local machine onlyrequirepass to secure Redis behind a password (preferably a long one)iptables to secure your server from unintended open ports. In Ubuntu, ufw provides a friendlier interface to working with iptables.
Detailed upgrade instructions are listed in Upgrading NodeBB
NodeBB is licensed under the GNU General Public License v3 (GPL-3) (http://www.gnu.org/copyleft/gpl.html).
Interested in a sublicense agreement for use of NodeBB in a non-free/restrictive environment? Contact us at [email protected].
#nodebb on Libera.chat