{"id":13402392,"url":"https://github.com/NodeBB/NodeBB","last_synced_at":"2025-03-14T07:32:46.152Z","repository":{"id":8179097,"uuid":"9603889","full_name":"NodeBB/NodeBB","owner":"NodeBB","description":"Node.js based forum software built for the modern web","archived":false,"fork":false,"pushed_at":"2024-10-28T15:20:28.000Z","size":92599,"stargazers_count":14190,"open_issues_count":176,"forks_count":2791,"subscribers_count":366,"default_branch":"master","last_synced_at":"2024-10-29T09:35:16.258Z","etag":null,"topics":["community","forum","javascript","mongodb","node","nodebb","nodejs","postgresql","redis","socket-io","websockets"],"latest_commit_sha":null,"homepage":"https://nodebb.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NodeBB.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-04-22T16:49:40.000Z","updated_at":"2024-10-29T03:13:48.000Z","dependencies_parsed_at":"2024-01-22T02:39:56.151Z","dependency_job_id":"f10a89cb-e752-4a18-87af-5863a42a9f47","html_url":"https://github.com/NodeBB/NodeBB","commit_stats":{"total_commits":25302,"total_committers":260,"mean_commits":97.31538461538462,"dds":0.6237056359181092,"last_synced_commit":"e780120a62bee68d4508752d4b140d9715ebd7f9"},"previous_names":[],"tags_count":447,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NodeBB%2FNodeBB","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NodeBB%2FNodeBB/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NodeBB%2FNodeBB/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NodeBB%2FNodeBB/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NodeBB","download_url":"https://codeload.github.com/NodeBB/NodeBB/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243542969,"owners_count":20308004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["community","forum","javascript","mongodb","node","nodebb","nodejs","postgresql","redis","socket-io","websockets"],"created_at":"2024-07-30T19:01:15.420Z","updated_at":"2025-03-14T07:32:46.146Z","avatar_url":"https://github.com/NodeBB.png","language":"JavaScript","readme":"# ![NodeBB](public/images/sm-card.png)\n\n[![Workflow](https://github.com/NodeBB/NodeBB/actions/workflows/test.yaml/badge.svg)](https://github.com/NodeBB/NodeBB/actions/workflows/test.yaml)\n[![Coverage Status](https://coveralls.io/repos/github/NodeBB/NodeBB/badge.svg?branch=master)](https://coveralls.io/github/NodeBB/NodeBB?branch=master)\n[![Code Climate](https://codeclimate.com/github/NodeBB/NodeBB/badges/gpa.svg)](https://codeclimate.com/github/NodeBB/NodeBB)\n[![](https://dcbadge.vercel.app/api/server/p6YKPXu7er?style=flat)](https://discord.gg/p6YKPXu7er)\n\n[**NodeBB Forum Software**](https://nodebb.org) 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 \u0026rarr; categorical hierarchies, local user accounts, and asynchronous messaging.\n\nNodeBB by itself contains a \"common core\" of basic functionality, while additional functionality and integrations are enabled through the use of third-party plugins.\n\n### [Try it now](//try.nodebb.org) | [Documentation](//docs.nodebb.org)\n\n## Screenshots\n\nNodeBB's theming engine is highly flexible and does not restrict your design choices. Check out some themed installs in these screenshots below:\n\n[![](http://i.imgur.com/VCoOFyqb.png)](http://i.imgur.com/VCoOFyq.png)\n[![](http://i.imgur.com/FLOUuIqb.png)](http://i.imgur.com/FLOUuIq.png)\n[![](http://i.imgur.com/Ud1LrfIb.png)](http://i.imgur.com/Ud1LrfI.png)\n[![](http://i.imgur.com/h6yZ66sb.png)](http://i.imgur.com/h6yZ66s.png)\n[![](http://i.imgur.com/o90kVPib.png)](http://i.imgur.com/o90kVPi.png)\n[![](http://i.imgur.com/AaRRrU2b.png)](http://i.imgur.com/AaRRrU2.png)\n[![](http://i.imgur.com/LmHtPhob.png)](http://i.imgur.com/LmHtPho.png)\n[![](http://i.imgur.com/paiJPJkb.jpg)](http://i.imgur.com/paiJPJk.jpg)\n\nOur minimalist \"Harmony\" theme gets you going right away, no coding experience required.\n\n![Rendering of a NodeBB install on desktop and mobile devices](https://user-images.githubusercontent.com/923011/228570420-2a4db745-b20d-474a-a571-1b59259508ef.png)\n\n## How can I follow along/contribute?\n\n* If you are a developer, feel free to check out the source and submit pull requests. We also have a wide array of [plugins](http://community.nodebb.org/category/7/nodebb-plugins) which would be a great starting point for learning the codebase.\n* If you are a designer, [NodeBB needs themes](http://community.nodebb.org/category/10/nodebb-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](http://getbootstrap.com/) as a frontend toolkit.\n* If you know languages other than English you can help us translate NodeBB. We use [Transifex](https://explore.transifex.com/nodebb/nodebb/) for internationalization.\n* Please don't forget to **like**, **follow**, and **star our repo**! Join our growing [community](http://community.nodebb.org) to keep up to date with the latest NodeBB development.\n\n## Requirements\n\nNodeBB requires the following software to be installed:\n\n* A version of Node.js at least 18 or greater ([installation/upgrade instructions](https://github.com/nodesource/distributions))\n* MongoDB, version 3.6 or greater **or** Redis, version 2.8.9 or greater\n* If you are using [clustering](https://docs.nodebb.org/configuring/scaling/) you need Redis installed and configured.\n* nginx, version 1.3.13 or greater (**only if** intending to use nginx to proxy requests to a NodeBB)\n\n## Installation\n\n[Please refer to platform-specific installation documentation](https://docs.nodebb.org/installing/os).\nIf installing via the cloud (or using Docker), [please see cloud-based installation documentation](https://docs.nodebb.org/installing/cloud/).\n\n## Securing NodeBB\n\nIt is important to ensure that your NodeBB and database servers are secured. Bear these points in mind:\n\n1. 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:\n    * Set `bind_address` to `127.0.0.1` so as to restrict access  to the local machine only\n    * Use `requirepass` to secure Redis behind a password (preferably a long one)\n    * Familiarise yourself with [Redis Security](http://redis.io/topics/security)\n2. Use `iptables` to secure your server from unintended open ports. In Ubuntu, `ufw` provides a friendlier interface to working with `iptables`.\n    * e.g. If your NodeBB is proxied, no ports should be open except 80 (and possibly 22, for SSH access)\n\n\n## Upgrading NodeBB\n\nDetailed upgrade instructions are listed in [Upgrading NodeBB](https://docs.nodebb.org/configuring/upgrade/)\n\n## License\n\nNodeBB is licensed under the **GNU General Public License v3 (GPL-3)** (http://www.gnu.org/copyleft/gpl.html).\n\nInterested in a sublicense agreement for use of NodeBB in a non-free/restrictive environment? Contact us at sales@nodebb.org.\n\n## More Information/Links\n\n* [Demo](https://try.nodebb.org)\n* [Developer Community](http://community.nodebb.org)\n* [Documentation \u0026 Installation Instructions](https://docs.nodebb.org)\n* [Help translate NodeBB](https://explore.transifex.com/nodebb/nodebb/)\n* [NodeBB Blog](https://nodebb.org/blog)\n* [Premium Hosting for NodeBB](https://www.nodebb.org/ \"NodeBB\")\n* Unofficial IRC community \u0026ndash; channel `#nodebb` on Libera.chat\n* [Follow us on Twitter](http://www.twitter.com/NodeBB/ \"NodeBB Twitter\")\n* [Like us on Facebook](http://www.facebook.com/NodeBB/ \"NodeBB Facebook\")\n","funding_links":[],"categories":["JavaScript","Packages","包","Repository","置顶","目录","Discussion Forums","javascript","Apps","Forum","postgresql","nodejs","Applications","1. 后端开发"],"sub_categories":["Forum","论坛","1、AI应用生态","Node.js相关","Follow me","Communication","Web","1.7 站点"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNodeBB%2FNodeBB","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNodeBB%2FNodeBB","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNodeBB%2FNodeBB/lists"}