HeyShinde/TermBoard

GitHub: HeyShinde/TermBoard

TermBoard 是一个交互式终端 UI 仪表盘,用于统一管理 Python 项目、虚拟环境、自定义任务及开发工作流,解决脚本管理分散和环境切换繁琐的问题。

Stars: 5 | Forks: 1

TermBoard Logo

A beautiful, interactive terminal dashboard for Python projects, environments, and tasks.


[![PyPI](https://img.shields.io/pypi/v/termboard.svg)](https://pypi.org/project/termboard/) [![Python](https://img.shields.io/pypi/pyversions/termboard.svg)](https://pypi.org/project/termboard/) [![License](https://img.shields.io/pypi/l/termboard.svg)](https://github.com/HeyShinde/TermBoard/blob/main/LICENSE)
## 问题所在:“为什么不直接使用脚本?” 作为开发者,我们经常编写 `Makefile` 或 bash 脚本(如 `test.sh` 或 `lint.sh`)来管理我们的项目工作流。虽然脚本可以工作,但它们有严重的局限性: 1. **上下文切换:** 你必须记住确切的命令或脚本名称,将其输入,然后看着它在你的终端中吐出数百行输出,抹除你的历史记录。 2. **环境地狱:** 你记得激活虚拟环境了吗?你使用的是 `uv`、`poetry` 还是 `conda`?在错误的环境中运行错误的脚本是日常的烦恼。 3. **可发现性:** 加入你项目的新开发人员不知道存在哪些脚本以及它们的作用。 ## 解决方案:TermBoard **TermBoard** 用一个持久的、交互式的终端 UI (TUI) 取代了你的脚本。 - 🧠 **智能环境检测:** TermBoard 会自动检测你使用的是 `uv`、`poetry`、`pipenv` 还是标准的 `.venv`,并在正确的环境中执行你的任务——无需手动激活。 - ⚡ **异步流式传输:** 任务在后台异步运行。它们的输出直接流式传输到一个漂亮的、可滚动的 Rich Log 窗口中,而不会冻结 UI 或污染你的终端历史记录。 - 🛠️ **完全可定制:** 在 `termboard.toml` 文件中定义自定义任务。你的团队可以克隆仓库,运行 `termboard`,并立即获得一个带有可点击按钮的 UI,用于部署、测试和构建。 ## ✨ 功能 ### 📋 项目信息 即时查看你的项目版本、Python 需求和虚拟环境状态。
项目信息 ### 📦 可视化包管理器 (PyPI) 在终端中搜索 PyPI 包,阅读说明,并直接使用原生的 `uv add` 进行安装。
可视化包管理器 ### 🌿 Git 集成 显示当前分支、未提交的更改,并提供暂存、取消暂存、提交和推送的操作。
Git 状态 ### 🐳 Docker 服务 无需离开仪表板即可查看、启动、停止和删除正在运行的 Docker 容器。
Docker 服务 ### 🚀 任务运行器 通过 `./termboard.toml` 或 `~/.termboard.toml` 定义并执行自定义项目任务。切换交互式任务以挂起 UI!
任务运行器 ### 🐙 GitHub 集成 原生浏览活跃的 pull request,监控 GitHub Actions 工作流状态,并跟踪 Issues。
GitHub 集成 ### ⚙️ 应用内设置 & 📁 全局工作区 覆盖环境变量,添加新的自定义任务,并全局保存配置。使用 `Ctrl+P` 快速切换器轻松在最近的项目之间进行切换。
项目设置 全局设置 ## 安装说明 TermBoard 旨在全局安装在你的机器上,以便你可以在*任何* Python 项目中运行它。 **1. 使用 `uv`(推荐):** ``` uv tool install termboard ``` **2. 使用 `pipx`:** ``` pipx install termboard ``` **3. 使用 `pip`:** ``` pip install termboard ``` ## 快速开始与使用 导航到任何 Python 项目目录并使用以下命令之一: **如果全局安装(通过 uv tool、pipx 或全局 pip):** ``` termboard ``` **如果你想动态运行而不安装:** ``` uvx termboard ``` *(如果你没有定义任何自定义任务,TermBoard 将自动提供用于测试和 linting 的默认设置)。* ## 💖 支持与社区 如果你喜欢 TermBoard,请考虑支持该项目! - ⭐️ **在 GitHub 上 Star**:[HeyShinde/TermBoard](https://github.com/HeyShinde/TermBoard) - 🐞 **报告问题**:[GitHub Issues](https://github.com/HeyShinde/TermBoard/issues) - 💬 **关注 / 联系**:[@heyshinde](https://github.com/HeyShinde) - 💖 **赞助 / 捐赠**:直接在 TUI 中按 `s` 热键,或访问我的 [GitHub Sponsors](https://github.com/sponsors/HeyShinde) 或 [Razorpay](https://razorpay.me/@heyshinde)。
标签:Blue Team, Linux 内核安全, Python, Python安全, SOC Prime, TUI, 任务管理, 开发工具, 无后门, 网络安全研究, 虚拟环境, 请求拦截, 逆向工具, 项目管理