توسعه
پیشنیاز: Node 22.13 به بالا و PostgreSQL (یا docker run -d -p 5433:5432 -e POSTGRES_USER=flock -e POSTGRES_PASSWORD=flock -e POSTGRES_DB=flock postgres:17-alpine).
# سرور (پیشفرض: postgres://flock:flock@localhost:5433/flock)cd server && npm install && npm run seed && npm run dev
# کلاینت وبcd apps/client && npm installnpx expo start --webapps/ client/ اپ Expo (expo-router) ← وب/PWA و اندروید desktop/ پوستهی Electron دور نسخهی وب (نصبکنندهی ویندوز)server/ Express و Socket.IO و PostgreSQLdeploy/ install.sh، uninstall.sh، سرویس systemd، Caddyfile، INSTALL.mdscripts/ package-server.sh (بستهی آفلاین سرور)، build-android.sh- بستهی سرور:
scripts/package-server.sh x64(یاarm64) فایلdist/flock-server-linux-x64.tar.gzرا میسازد. با push کردن یک تگ مثلv1.7.0، گیتهاب اکشنز هر دو را میسازد و به ریلیز اضافه میکند. - اندروید: بهصورت محلی با Gradle ساخته و با کلید خودتان امضا میشود:
scripts/build-android.sh(به Android SDK و JDK 21 نیاز دارد). تماس فقط در بیلد واقعی کار میکند و Expo Go تماس ندارد. - ویندوز:
cd apps/desktop && npm install && npm run dist:win. - PWA دمو: با push کردن تگ ریلیز،
.github/workflows/deploy-pwa.ymlهم اجرا میشود و برنچpwaرا به همان ریلیز میبرد. Vercel این برنچ را باscripts/build-pwa.shمیسازد. آدرس سرور دمو متغیرPWA_API_URLدر پروژهی Vercel است و فقط داخل همین بیلد قرار میگیرد؛ اپهای اندروید و ویندوز هیچ سرور پیشفرضی ندارند.
