PHPackages                             zhuchunshu/sforum - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [DevOps &amp; Deployment](/categories/devops)
4. /
5. zhuchunshu/sforum

AbandonedProject[DevOps &amp; Deployment](/categories/devops)

zhuchunshu/sforum
=================

SForum

v2.7.7(1y ago)19911745MITGoPHP &gt;=8.0CI passing

Since Nov 10Pushed 2w ago3 watchersCompare

[ Source](https://github.com/zhuchunshu/SForum)[ Packagist](https://packagist.org/packages/zhuchunshu/sforum)[ Fund](https://www.runpod.cn/290.html)[ GitHub Sponsors](https://github.com/zhuchunshu)[ RSS](/packages/zhuchunshu-sforum/feed)WikiDiscussions main Synced 2w ago

READMEChangelog (10)Dependencies (51)Versions (157)Used By (0)

SForum
======

[](#sforum)

Maintainable, plugin-first open-source forum framework.

Core is the host (identity, forum primitives, permissions, extension runtime, contracts). Deployment-specific behavior—mail transport, optional search engines, storage vendors, and similar—lives in extensions.

Documentation
-------------

[](#documentation)

LanguageStart here**简体中文**[`docs/zh-CN/README.md`](./docs/zh-CN/README.md)**English**[`docs/en-US/README.md`](./docs/en-US/README.md)Hub[`docs/README.md`](./docs/README.md)Quick paths:

- [快速开始](./docs/zh-CN/getting-started.md) / [Getting started](./docs/en-US/getting-started.md)
- [使用说明](./docs/zh-CN/usage/README.md) / [Usage](./docs/en-US/usage/README.md)
- [开发指南](./docs/zh-CN/development/README.md) / [Development](./docs/en-US/development/README.md)
- [生产部署](./docs/zh-CN/deployment.md) / [Deployment](./docs/en-US/deployment.md)
- Extension technical reference: [`docs/extensions/`](./docs/extensions/)

Repository map
--------------

[](#repository-map)

PathRole`apps/web`Nuxt 4 frontend`apps/api`Go Fiber API, worker, CLI`contracts/`OpenAPI + Protobuf`extensions/`Built-in / optional / dev packages`docs/`Bilingual handbooks + extension reference`knowledge/`Decisions, module notes, session handoffs`scripts/`Dev and test helpers`deploy.sh` + `compose*.yaml`Production and dependency orchestrationLocal development
-----------------

[](#local-development)

```
./scripts/dev.sh                 # PostgreSQL, Redis, Mailpit + migrations
./scripts/api-dev.sh             # API (embeds worker in dev)
cd apps/web && bun run dev       # Nuxt on :3000
```

Background jobs: development defaults to `EMBED_WORKER_IN_API=true`, so the API process consumes the River queue. For **production split** process development (`EMBED_WORKER_IN_API=false`), run a standalone worker:

```
./scripts/worker-dev.sh          # optional; only when the API does not embed the worker
```

Useful URLs:

- Web:
- API health:
- API ready:
- Mailpit:

Meilisearch is **optional** (`docker compose --profile search up -d meilisearch`). Default search is built-in site PostgreSQL FTS.

Full steps: [docs/zh-CN/getting-started.md](./docs/zh-CN/getting-started.md) or [docs/en-US/getting-started.md](./docs/en-US/getting-started.md).

Production
----------

[](#production)

```
mkdir -p sforum
curl -fsSL https://github.com/zhuchunshu/SForum/archive/refs/tags/v3.0.1.tar.gz \
  | tar -xz --strip-components=1 -C sforum
cd sforum
./deploy.sh                              # interactive install; Enter uses latest stable
./upgrade.sh                             # update; Enter selects the newest GitHub Release
./upgrade.sh --version v3.0.1            # update to a specific release
```

`upgrade.sh` accepts a positional version or `--version`; its default `latest`includes prereleases. It resolves that choice to a concrete tag, prints the current and target versions, and asks for confirmation (`--yes` skips prompts). The first blue/green ingress conversion has a short maintenance window. Later migration-free releases keep API/Web HTTP traffic available; WebSockets may reconnect and Worker consumption pauses briefly without losing durable jobs. Targets with pending SForum Core or River migrations must use `deploy.sh` and its maintenance-window migration path.

Details: [docs/zh-CN/deployment.md](./docs/zh-CN/deployment.md) / [docs/en-US/deployment.md](./docs/en-US/deployment.md).

Community
---------

[](#community)

- Report vulnerabilities privately according to [`SECURITY.md`](./SECURITY.md).
- SForum is available under the [`MIT License`](./LICENSE).

Contributing / agents
---------------------

[](#contributing--agents)

1. Read [`AGENTS.md`](./AGENTS.md)
2. Read [`docs/`](./docs/README.md) for usage and development
3. Read [`knowledge/index.md`](./knowledge/index.md) for current project memory
4. Keep OpenAPI, tests, and knowledge notes updated with code changes

###  Health Score

52

—

FairBetter than 96% of packages

Maintenance71

Regular maintenance activity

Popularity30

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity74

Established project with proven stability

 Bus Factor1

Top contributor holds 98.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~8 days

Recently: every ~53 days

Total

148

Last Release

572d ago

Major Versions

v1.9.1-beta.2 → v2.0.02022-08-12

### Community

Maintainers

![](https://www.gravatar.com/avatar/48b06512b65848936eaa00bb25e52afd04e0ddd9fe034d892ba1b65ab67956e2?d=identicon)[Inkedus](/maintainers/Inkedus)

---

Top Contributors

[![zhuchunshu](https://avatars.githubusercontent.com/u/57830364?v=4)](https://github.com/zhuchunshu "zhuchunshu (2104 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (24 commits)")[![wbwm](https://avatars.githubusercontent.com/u/17562648?v=4)](https://github.com/wbwm "wbwm (6 commits)")[![ImgBotApp](https://avatars.githubusercontent.com/u/31427850?v=4)](https://github.com/ImgBotApp "ImgBotApp (5 commits)")[![KormiMeiko](https://avatars.githubusercontent.com/u/59416791?v=4)](https://github.com/KormiMeiko "KormiMeiko (1 commits)")[![RunPodCn](https://avatars.githubusercontent.com/u/96383771?v=4)](https://github.com/RunPodCn "RunPodCn (1 commits)")

---

Tags

dockerforumsforumphpswoolehyperfMicroservicephp-forumphp-bbs

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/zhuchunshu-sforum/health.svg)

```
[![Health](https://phpackages.com/badges/zhuchunshu-sforum/health.svg)](https://phpackages.com/packages/zhuchunshu-sforum)
```

###  Alternatives

[mineadmin/mineadmin

Quickly build a background management system for web applications

1.2k2.3k](/packages/mineadmin-mineadmin)[hyperf/hyperf-skeleton

A coroutine framework that focuses on hyperspeed and flexible, specifically use for build microservices and middlewares.

315191.9k](/packages/hyperf-hyperf-skeleton)[xmo/mine-core

mineadmin core package

1787.7k1](/packages/xmo-mine-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
