Giter Site home page Giter Site logo

docs's Introduction

NodeBB

Workflow Coverage Status Code Climate

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.

Screenshots

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.

Rendering of a NodeBB install on desktop and mobile devices

How can I follow along/contribute?

  • If you are a developer, feel free to check out the source and submit pull requests. We also have a wide array of plugins which would be a great starting point for learning the codebase.
  • If you are a designer, NodeBB needs themes! NodeBB's theming system allows extension of the base templates as well as styling via SCSS or CSS. NodeBB's base theme utilizes Bootstrap 5 as a frontend toolkit.
  • If you know languages other than English you can help us translate NodeBB. We use Transifex for internationalization.
  • Please don't forget to like, follow, and star our repo! Join our growing community to keep up to date with the latest NodeBB development.

Requirements

NodeBB requires the following software to be installed:

  • A version of Node.js at least 16 or greater (installation/upgrade instructions)
  • MongoDB, version 3.6 or greater or Redis, version 2.8.9 or greater
  • If you are using clustering you need Redis installed and configured.
  • nginx, version 1.3.13 or greater (only if intending to use nginx to proxy requests to a NodeBB)

Installation

Please refer to platform-specific installation documentation. If installing via the cloud (or using Docker), please see cloud-based installation documentation.

Securing NodeBB

It is important to ensure that your NodeBB and database servers are secured. Bear these points in mind:

  1. While some distributions set up Redis with a more restrictive configuration, Redis by default listens to all interfaces, which is especially dangerous when a server is open to the public. Some suggestions:
    • Set bind_address to 127.0.0.1 so as to restrict access to the local machine only
    • Use requirepass to secure Redis behind a password (preferably a long one)
    • Familiarise yourself with Redis Security
  2. Use iptables to secure your server from unintended open ports. In Ubuntu, ufw provides a friendlier interface to working with iptables.
    • e.g. If your NodeBB is proxied, no ports should be open except 80 (and possibly 22, for SSH access)

Upgrading NodeBB

Detailed upgrade instructions are listed in Upgrading NodeBB

License

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].

More Information/Links

docs's People

Contributors

a0533057932 avatar angristan avatar barisusakli avatar blitz-research avatar dangerusslee avatar dependabot[bot] avatar dunklestoast avatar ericgaspar avatar evaldosantos avatar hikch avatar hyraze avatar julianlam avatar meelash avatar noscripter avatar oplik0 avatar phit avatar pitaj avatar psychobunny avatar sataur avatar sh-cho avatar shlomocode avatar sizigee avatar tbaut avatar timitoc avatar toduyemi avatar traeregan avatar turtlecode84 avatar voanhcuoc avatar xinbenlv avatar yajuu-senpai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs's Issues

Navbar resizing Issue when using browser arrows for naivgation.

Hello im having issue with the navbar covering part of my page when using the browser arrows to go back. Im not sure where in the source code the pagination section gets added to the navbar but i would like to just add it to the body for a temporary solution.
home page
image

click into sub category
image

clicked back but navbar did not resize
image

How to help Docs i18n?

I find NodeBB Docs use Mkdocs instead of readthedocs now . But I can't find where to translate this docs.


Is it possible to add a localized third-party document link to an official document? I have created a Chinese Documents(Is not a complete official document translation) via kancloud.cn

Mongodb systemd problems

I wanna know from you guys how to improve the docs. I'm following the instructions to run mongodb, when I try to start the mongod service, I get an error:
vagrant@vagrant-ubuntu-trusty-64:~$ sudo systemctl start mongod
sudo: systemctl: command not found

I have to install systemd to solve this
$ sudo apt-get install systemd

After do this I was able to run the commands:
$ sudo service mongod start
$ sudo service mongod status

Issues as newbie to NodeBB project

Hi, I am a newbie to the project. I faced a few issues while installing the nodeBB app and the docs app.

NodeBB app

  • Installation doesn't mention instructions to install MongoDB, only redis. The part on installing mongdb comes in the configuring part while it is needed before running the setup script.
  • In the via the cloud section in Installation, there is a none section and clicking on it opens a page with 404 - Not found message.

Docs

  • Installation instructions are only for linux
  • The source code has instructions for two MacOS versions it seems, but it shows only one - Maverick and Big Sur.
  • The file structure has yarn.lock but not package-lock.json. While installing, git shows package-lock.json also. Should we include it or update gitignore?

Will be happy to open PR for these :)

[Feature] Adding Elestio as Deployment option

Hey team,
I am Kaiwalya, Developer Advocate at Elestio. Elestio has been providing options of fully deploying and managing NodeBB application as shown here. I think it would be a great idea if we can add it to official readme/documentation here.
In addition to this, if you are interested we provide collaboration opportunities with tools we support by revenue share upon addition of this method in docs. If you would like to collaborate, just drop me an email at [email protected] :)

image

Debain docs outdated / Merge with Ubuntu?

The Debian installation page is very outdated, since it mentions Wheezy, Node 0.12, etc.

I was going to update it but the Ubuntu page will basically work exactly the same, besides 2 or 3 repositories that are also available on Debian.

I have 2 propositions:

  • To rewrite the Debian page from the Ubuntu page (= paste the Ubuntu page and make a few changes)
  • To merge both pages and point out differences. (This might not even be needed if we use lsb_release for the repositories URL, for instance).

What do you think? Both should be pretty quick and easy to do.

Add a warning regarding nginx proxy_pass

Hi !
In the nginx config documentation, the proxy_pass redirect to http://127.0.0.1:4567;
By setting a "/" at the end of that url, url are decoded (https://serverfault.com/questions/459369/disabling-url-decoding-in-nginx-proxy#comment610623_463932) and hence vulnerable to XSS (NodeBB/NodeBB#4192).
It's fairly easy to make the mistake of putting an ending slash (and the proxy still work), so that a warning in the doc would be welcome.
Apart from ours instances, I've spotted a couple of websites having the same issue :)

Development -> Plugins -> `plugin.json` needs updating

  • The sample config at the top of the file does not contain a modules section
  • The link to "Third-Party Libraries" is incorrect
  • The modules section needs to be expanded
  • The acpScripts section needs to be deprecated
  • Revision to mention webpack

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.