عن المشروع
Beatsync هو مشغل صوت ويب عالي الدقة مصمم للتشغيل متعدد الأجهزة والصوت المكاني. التطبيق الرسمي مستضاف على beatsync.gg.
### الميزات الرئيسية
- **مزامنة دقيقة بالمللي ثانية**: يستخدم بدائيات مزامنة زمنية مستوحاة من NTP لتحقيق محاذاة صوتية عالية الدقة بين الأجهزة المتعددة.
- **توافق عبر المنصات**: يعمل على أي جهاز بمتصفح حديث (يُنصح باستخدام Chrome للحصول على أفضل أداء).
- **صوت مكاني**: يتيح التحكم في مستوى صوت الأجهزة عبر مصدر استماع افتراضي لتأثيرات صوتية فريدة.
- **واجهة مستخدم مصقولة**: يتضمن حالات تحميل سلسة، ومؤشرات حالة، وواجهة مدمجة.
- **قابل للاستضافة الذاتية**: يمكنك بسهولة تشغيل نسختك الخاصة باستخدام بضعة أوامر بسيطة.
### البنية
المشروع منظم كـ Turborepo monorepo مع مساحات العمل التالية:
- `apps/server`: خادم Bun HTTP و WebSocket.
- `apps/client`: واجهة أمامية Next.js تستخدم Tailwind و Shadcn/ui.
- `packages/shared`: مخططات آمنة الأنواع ودوال مشتركة بين العميل والخادم.
### بدء سريع
لتشغيل المشروع محليًا:
1. قم بتكوين متغيرات البيئة في `apps/client/.env` (`NEXT_PUBLIC_API_URL` و `NEXT_PUBLIC_WS_URL`).
2. قم بتثبيت التبعيات وابدأ خوادم التطوير باستخدام Bun:
- `bun install`
- `bun dev` (يبدأ العميل على المنفذ :3000 والخادم على المنفذ :8080)
ملاحظة: المشروع في مرحلة تطوير مبكرة، ودعم الأجهزة المحمولة تجريبي حاليًا.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.