← Selected projects

COMMUNITY SOFTWARE / ENGINEERING CASE

Shuyang Home: shared logic, clear failure states

A cross-platform community application. The v1.6.0 work center brings scattered tasks together while retaining the original authorization and business actions. Earlier shared-state and upload decisions remain documented below.

Vue 3TypeScriptuni-appSpring Boot
Current source
v1.6.0
Project status
Local single-instance pilot
Reviewed
2026.11.03
Public media
Guest views / synthetic fixtures

01 / APPLICATION

A working community workflow

Members can publish resources, join activities, share media and place specialty orders. Moderators review content and manage access. Payments and settlement remain offline; the public screenshots show guest pages or isolated test content.

Desktop guest view · click to enlarge
Mobile layout · existing project screenshot

NEW / v1.6.0

A work center that respects business ownership

01

Permission-scoped aggregation

WorkCenter checks the actor and record before building a list or opening its target. Organizers do not inherit administrator order access; forum moderation retains board scope.

Inspect the implementation →
02

Notifications describe changes

Messages use recipient, object and business version for deduplication. Opening a target rechecks access; marking a notice read does not finish the business task.

Inspect the implementation →
03

Edits keep a review boundary

A published help request keeps its approved text while a new draft is reviewed. Revision checks handle competing edits; expiry and closure constrain available actions.

Inspect the implementation →

Example reading path: member opens a task → sees its current status → follows the original action → reads a subsequent business notice. Existing release tests cover permission boundaries, notification snapshots and draft conflicts.

In-app notifications only; no offline or WeChat push. This is a local pilot with published source. Physical-device acceptance and production deployment remain separate work.

02 / DECISIONS

Three decisions to inspect in the code

01

Share business state; isolate platform APIs

Web and uni-app read the shared logic; each platform supplies network, storage and device access. The platform adapter checks response envelopes and session ownership.

Read the implementation note →
02

Keep failed photos visible

A serial upload queue tracks four states. Identity changes invalidate late callbacks; failed items can be retried or removed. Ignoring a callback does not cancel a server write.

Read the implementation note →
03

Check the files being delivered

VERSION coordinates the applications. A manifest, file-set comparison and ZIP byte checks make stale artifacts easier to detect.

Read the implementation note →

03 / REPRODUCE

Start with a pinned release

The public release uses frontend/ and backend/. Web code lives in frontend/src, the mobile app in frontend/mobile, and shared state in frontend/shared. Read platform.ts and usePhotoUpload.ts before following the corresponding tests.

For Windows local startup, install Node.js 18+, npm and JDK 8; dependency downloads need network access. Clone the release, then run the two startup commands in separate terminals at the repository root. The backend prompts for the initial administrator password.

git clone --branch v1.6.0 --depth 1 https://github.com/GuHang2011/shuyang-home.git
cd shuyang-home

# Terminal 1, repository root
powershell -ExecutionPolicy Bypass -File .\Start-Backend.ps1 -Build

# Terminal 2, repository root
powershell -ExecutionPolicy Bypass -File .\Start-Frontend.ps1

# Open http://127.0.0.1:8888

This documents the current project runtime. Java 8 / Spring Boot 2.3 and single-instance H2 require upgrade and deployment review before public production use. The case is not a hosted production service.

04 / VERIFICATION

What the existing checks establish

Version / recordRecorded checksScope
v1.6.0 · 2026-11-03198 frontend checks, 94 backend tests, 48 browser assertions and the recorded builds.Existing release evidence, reviewed for this page. The full application suite was not rerun for this update.
v1.2.1 · 2026-10-3168 frontend logic checks + 63 backend tests; Web/mobile types and three builds.Recorded after the directory migration; not rerun for this case page.
v1.2.1 · local package140 packaged files verified against the manifest and ZIP.A locally generated delivery package, not the GitHub source ZIP.
v1.2.2 · 2026-10-31Maven wrapper executable mode restored; versions checked.Reuses the v1.2.1 business results; no new full acceptance claim.

Real-device work remains

WeChat release, real iOS/Android cameras, keyboards, location and background behavior still need device acceptance. Simulated mobile browser and uni API checks do not establish those results.

Next engineering questions

Can key API payloads be checked at runtime? How are unreferenced uploaded media cleaned up? How do backup and capacity behave on the target host? These are follow-up tasks, not completed features.