منصوبے کے بارے میں
WattRoom ایک اوپن سورس، خود ہوسٹ ایبل پلیٹ فارم ہے collaborative indoor cycling کے لیے، جسے Natron نے بنایا ہے اور AGPL-3.0 لائسنس کے تحت جاری کیا ہے۔ اس کا بنیادی نقطہ یہ ہے کہ اندرونی تربیت اکیلی بورنگ ہوتی ہے، اور وirtual دنیا پیش کرنے کے بجائے یہ presence پر زور دیتا ہے: سوار اپنے تربیتی ساتھیوں کے ساتھ ایک کمرے میں شامل ہوتے ہیں، ایک ہی ورکشاپ کو ہر سوار کی اپنی FTP کے مطابق سکیل کرتے ہوئے سوار ہوتے ہیں، اور سوارتے وقت بات، ایک دوسرے کو دیکھنا اور موسیقی شیئر کر سکتے ہیں۔
اس کی خصوصیات
- کمرے: ایک ہی ڈیش بورڈ پر live watts، دل کی دھڑکن اور cadence دکھائی جاتی ہے، روم فیڈ اور وقفہ ٹائم لائن کے ساتھ، اور آواز اور کیمرہ ایک ٹاپ پر۔
- ڈھانچہ دار ورکشاپس: ایک مرتب لائبریری اور ایک ایڈیٹر کے ساتھ، BLE FTMS اسمارٹ ٹرینرز پر ERG کنٹرول کے ساتھ۔ اہداف ہر سوار کی FTP کے مطابق پیمانے پر ہوتے ہیں، تاکہ ایک قافلہ ان کی اعداد و شمار سے کوئی بھی سیشن ایک ساتھ سوار ہو سکے۔
- گیم موڈز: سات قسم کے، جن میں sprint klaxons، eliminations، Watt Golf اور Backyard Ramp شامل ہیں۔
- مشترکہ جواک باکس: ہر کمرے کے لیے ایک مربوط YouTube ساؤنڈ ٹریک۔
- ریکارڈ والی سوائیپ: سیشنز محفوظ ہوتے ہیں، .fit کے طور پر ایکسپورٹ کیے جا سکتے ہیں، Strava پر اپ لوڈ کیے جا سکتے ہیں، اور XP اور ٹرافی حاصل کی جا سکتی ہے۔
- نجیت: میٹرکس روم اسکوپڈ ہیں اور آواز/ویڈیو کبھی ریکارڈ نہیں ہوتی؛ کمرے ڈیفالٹ طور پر ذاتی ہیں۔
ہارڈ ویئر اور براؤزرز
ایک smart trainer BLE FTMS بولتا ہے براہ راست براؤزر سے Web Bluetooth کے ذریعے۔ اس سے training path آج کل Chromium-مخصوص ہے: ڈیسک ٹاپ اور Android پر Chrome اور Edge۔ پرانے Wahoo units ایک کھلے backlog آئٹم کے طور پر درج ہیں۔ iOS training path موجود نہیں ہے، کیونکہ Safari Web Bluetooth کو نافذ نہیں کرتا؛ منصوبہ اسے تحقیق شدہ فیصلے کے طور پر دستاویز کرتا ہے نہ کہ نظر انداز کے طور پر۔ کمرہ خود کسی بھی براؤزر میں کھلتا ہے، جن افادیت کو trainer کے ساتھ ضرورت ہے وہ gated ہیں نه کہ ایک الگ read-only پیج۔ ترقی کے لیے کسی trainer کی ضرورت نہیں: ایک simulated trainer اور /dev/room پر ایک مکمل mock room فراہم کیا گیا ہے۔
اسٹیک اور تعیناتی
ایک Go server in-memory room hub کے ساتھ (ایک goroutine فی کمرہ)، ایک SvelteKit single-page app، PostgreSQL اور self-hosted LiveKit، ایک ہی binary کے ساتھ shipped جن میں embedded frontend شامل ہے، اور ایک compose stack کے طور پر deploy کی گئی ہے ایک single VM پر۔ Development کے لیے Go 1.26+، Node 22+، pnpm اور Docker درکار ہیں; make targets Postgres اور LiveKit کو containers میں لانچ کرتے ہیں، port 8080 پر hot-reloading server چلاتے ہیں، اور port 5174 پر Vite dev server چلاتے ہیں جو /api اور /ws کو proxy کرتا ہے۔
دستاویزات اور ریلیزز
Architecture اور spec documents ایک founding document کے ساتھ ہیں جو product اور architecture decisions کو ریکارڈ کرتا ہے، ایک research document، اور numbered ADRs۔ ریلیزز دن میں کئی بار cut کی جاتی ہیں: ایک release صرف ایک چھوٹا، پہلے سے merged change شامل کرتی ہے، اور rollback کرنے کا مطلب چل رہی image کو previous tag پر پوائنٹ کرنا ہے بغیر database کو چھואے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.