منصوبے کے بارے میں
Wakapi ایک مفت، اوپن سورس، خود میزبان بیک اینڈ ہے جو WakaTime کے ساتھ مطابقت رکھتا ہے، جو کہ مقبول کوڈنگ ایکٹیویٹی ٹریکر ہے۔ یہ ان ڈویلپرز کے لیے ڈیزائن کیا گیا ہے جو اپنے کوڈنگ کے اعداد و شمار اپنے انفراسٹرکچر پر رکھنا چاہتے ہیں جبکہ موجودہ WakaTime ایڈیٹر پلگ انز کا استعمال جاری رکھنا چاہتے ہیں۔
## یہ کیا کرتا ہے
Wakapi سرکاری WakaTime کلائنٹ ٹولز سے ہارٹ بیٹس وصول کرتا ہے اور انہیں پروجیکٹس، زبانوں، ایڈیٹرز، ہوسٹس، اور آپریٹنگ سسٹمز کے بارے میں اعداد و شمار میں تبدیل کرتا ہے۔ یہ ایک ویب ڈیش بورڈ، ایمبیڈ ایبل بیجز، ہفتہ وار ای میل رپورٹس، ایک REST API، اور Prometheus کے ساتھ مطابقت رکھنے والی میٹرکس ایکسپورٹ پیش کرتا ہے۔ اسے WakaTime کے ساتھ جزوی طور پر مطابقت پذیر قرار دیا گیا ہے اور یہ خود WakaTime کے ساتھ بھی مربوط ہو سکتا ہے۔
## تعیناتی کے اختیارات
README میں Wakapi چلانے کے کئی طریقے درج ہیں:
- wakapi.dev پر میزبان کلاؤڈ سروس استعمال کریں۔
- ایک شیل انسٹالر اسکرپٹ کے ذریعے ریلیز کو فوری چلائیں۔
- سرکاری Docker امیج (ghcr.io/muety/wakapi) چلائیں، ایک مستقل والیوم اور پاس ورڈ سالٹ کے ساتھ۔ SQLite ڈیفالٹ ڈیٹا بیس ہے؛ MySQL اور Postgres بھی معاون ہیں۔ Docker Compose اور Docker Secrets معاون ہیں، اور Kubernetes کے لیے ایک کمیونٹی Helm چارٹ موجود ہے۔
- Go کے ساتھ سورس سے کمپائل اور چلائیں، ایک YAML کنفیگریشن فائل استعمال کرتے ہوئے۔ اسٹینڈalone تعیناتیوں کے لیے SystemD سروس کے طور پر چلانا تجویز کیا جاتا ہے۔
## کلائنٹ سیٹ اپ
Wakapi اوپن سورس WakaTime کلائنٹ ٹولز پر انحصار کرتا ہے۔ صارفین اپنے ایڈیٹر کے لیے WakaTime پلگ ان انسٹال کرتے ہیں، پھر `~/.wakatime.cfg` میں ترمیم کرتے ہیں تاکہ `api_url` کو اپنے Wakapi انسٹینس کی طرف اشارہ کریں اور اپنی Wakapi API کلید سیٹ کریں۔ کلائنٹ سائیڈ پراکسی اختیاری طور پر کنفیگر کی جا سکتی ہے۔ Wakapi اور WakaTime متوازی طور پر چل سکتے ہیں، یا تو کلائنٹ سائیڈ کنفیگریشن کے ذریعے یا Wakapi کی ریلے خصوصیت کے ذریعے، جو ہارٹ بیٹس کو WakaTime کو فارورڈ کرتی ہے۔
## کنفیگریشن
کنفیگریشن ایک YAML فائل یا ماحولیاتی متغیرات کے ذریعے فراہم کی جا سکتی ہے۔ README میں اختیارات کا ایک وسیع مجموعہ دستاویزی ہے، بشمول:
- ایپلیکیشن سیٹنگز: لیڈر بورڈ فعال کرنا، دائرہ کار، جنریشن کا وقت، اور تصدیق کی ضرورت؛ جمع بندی اور ہفتہ وار رپورٹ کے شیڈول؛ ڈیٹا کی صفائی اور ڈیٹا بیس کی اصلاح کے اوقات؛ درآمد کی سیٹنگز (فعال کرنا، بیچ سائز، بیک آف، ریٹ لیمٹس، ہوسٹ وائٹ لسٹ)؛ ہارٹ بیٹ کی زیادہ سے زیادہ عمر؛ کیش وارمنگ؛ حسب ضرورت زبان کی میپنگز؛ اوتار URL ٹیمپلیٹس؛ تاریخ اور تاریخ/وقت کی فارمیٹس؛ سپورٹ رابطہ؛ ڈیٹا برقرار رکھنے اور غیر فعال اکاؤنٹ کی حدود۔
- سرور سیٹنگز: پورٹ، IPv4/IPv6 ایڈریسز، UNIX ساکٹ اور اس کی اجازتیں، لاگ فارمیٹ، درخواست ٹائم آؤٹ، TLS سرٹیفکیٹ اور کلید کے راستے، بیس پاتھ، اور عوامی URL۔
- سیکیورٹی سیٹنگز: مقامی تصدیق کو غیر فعال کرنا، WebAuthn کو غیر فعال کرنا، پاس ورڈ سالٹ، کوکی کلید، غیر محفوظ کوکیز، کوکی کی عمر، مقامی سائن اپ، OIDC سائن اپ، OIDC TLS تصدیق، اور سائن اپ CAPTCHA۔
## نوٹس
README میں کہا گیا ہے کہ، محدود مینٹینر وقت کی وجہ سے، پل ریکوئسٹس عارضی طور پر قبول نہیں کی جاتیں۔ پروجیکٹ ایک اوپن سورس لائسنس کے تحت لائسنس یافتہ ہے اور اسے muety نے برقرار رکھا ہے۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.