इस प्रोजेक्ट के बारे में
sofka एक Kubernetes टर्मिनल यूज़र इंटरफ़ेस (TUI) है जो Rust में लिखा गया है, और kube-rs तथा ratatui पर आधारित है। इसे हर जगह async बनाने के लिए डिज़ाइन किया गया है ताकि UI क्लस्टर संचालन पर कभी ब्लॉक न हो। यह प्रोजेक्ट k9s से प्रेरित है, लेकिन async प्रदर्शन और मूल एकीकरण पर ध्यान केंद्रित करते हुए इसे फिर से कल्पना की गई है।
मुख्य विशेषताएँ शामिल हैं:
- सामान्य रेंडर पाइपलाइन के साथ कस्टम संसाधन ब्राउज़िंग, सामान्य प्रकारों के लिए अंतर्निहित कॉलम, और CRDs से उनके कस्टम संसाधनों तक ड्रिल-डाउन।
- अंतर्निहित Flux CD समर्थन: मूल API पैच के माध्यम से suspend, resume और reconcile (कोई flux बाइनरी की आवश्यकता नहीं)। इसमें एक मूल Helm इंस्पेक्टर शामिल है जो रिलीज़ Secrets को स्वयं डिकोड करता है।
- अंतर्निहित Argo CD समर्थन: ArgoCD Applications को suspend, resume और sync करें; ApplicationSets suspend/resume का समर्थन करते हैं। मूल API पैच का उपयोग करता है, कोई argocd बाइनरी नहीं।
- घटना स्पष्टीकरण: `X` दबाने पर एक निर्धारित, साक्ष्य-आधारित घटना दृश्य खुलता है (कोई AI नहीं, कोई बाहरी सेवा नहीं)।
- बल्क क्रियाएँ: कई संसाधनों पर एक साथ delete, kill या Flux क्रियाओं के लिए स्पेस से पंक्तियों को चिह्नित करें।
- बैकग्राउंड पोर्ट-फ़ॉरवर्ड: एक शुरू करने से TUI फ़्रीज़ नहीं होता; `:pf` सभी फ़ॉरवर्ड प्रबंधित करता है।
- सुरक्षा उपाय और केवल-पढ़ने के लिए मोड: "प्रोड में कभी डिलीट न करें" केवल याद नहीं किया जाता, बल्कि लागू किया जाता है।
- स्किन्स: Catppuccin, Gruvbox, Solarized, Nord, Dracula, Tokyo Night, One Dark, Rosé Pine, Rosé Pine Dawn, Monokai, Flexoki, स्वचालित डार्क/लाइट पहचान के साथ।
स्थापना विकल्पों में macOS, Linux और Windows (aarch64/x86_64) के लिए रिलीज़ से पहले से निर्मित बाइनरी, साथ ही Homebrew, Nix और Cargo शामिल हैं। Linux पैकेजों में DEB, RPM, Arch और Alpine APK शामिल हैं। Nix उपयोगकर्ताओं के लिए एक Home Manager मॉड्यूल उपलब्ध है।
उपयोग Bash, Zsh, Fish, Elvish और PowerShell के लिए शेल पूर्णता का समर्थन करता है। कमांड-लाइन विकल्पों में संसाधन चयन, नेमस्पेस, सभी-नेमस्पेस, संदर्भ, kubeconfig, केवल-पढ़ने/लिखने के मोड और प्रयोगात्मक मूल describe शामिल हैं। हेडलेस मोड (`--check`, `--snapshot`, `info`) TTY के बिना काम करते हैं और CI स्मोक टेस्ट के रूप में दोगुने होते हैं।
कॉन्फ़िगरेशन `$XDG_CONFIG_HOME/sofka` (या `~/.config/sofka`) के अंतर्गत `config.toml`, `config.yaml` या `config.yml` का उपयोग करता है। विकल्पों को प्रति क्लस्टर या प्रति kubeconfig संदर्भ में ओवरराइड किया जा सकता है, जिससे प्रोडक्शन हल्की स्किन के साथ केवल-पढ़ने के लिए हो सकता है जबकि अन्य वातावरण कॉन्फ़िगर किए अनुसार रहते हैं।
दस्तावेज़ीकरण सुविधाओं, k9s के साथ तुलना, प्रदर्शन बेंचमार्क, कीमैप्स, कॉन्फ़िगरेशन, दृश्य और थ्रेसहोल्ड, प्लगइन्स, सुरक्षा, प्रदाताओं, डिबगिंग और आर्किटेक्चर को कवर करता है। यह प्रोजेक्ट MIT या Apache-2.0 के तहत द्वि-लाइसेंस प्राप्त है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.