Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Add interactive menu mode with ASCII art header

未关闭
#677 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
20/100
Issue 类型
功能
描述清晰度
需要澄清
活跃度
停滞
技术栈
go
领域
cli

调研方向

首先调研 sqlcmd 现有的命令结构和入口点,然后了解 Azure CLI 和 GitHub CLI 中交互模式的工作方式。该 issue 要求使用 TUI 库、设计菜单结构、提供引导式连接和查询流程、处理跨平台键盘操作、支持非交互式 fallback、编写测试和文档;要完成这项工作,需要解决这些设计选择并完成列出的任务。

由索引模型根据 Issue 内容生成。

描述

enhancement

Summary

Add an interactive menu mode for sqlcmd with a visually appealing ASCII art header, similar to the Azure CLI's interactive experience.

Motivation

An interactive menu mode would:

  • Improve discoverability: Help new users explore sqlcmd's features
  • Reduce friction: Guide users through common tasks without memorizing flags
  • Visual appeal: A branded ASCII art header creates a professional, memorable experience
  • Consistency: Align with Azure CLI and other modern CLI tools that have interactive modes

Proposed Features

ASCII Art Header
   _____ ____    __    ________  _______
  / ___// __ \  / /   / ____/  |/  / __ \
  \__ \/ / / / / /   / /   / /|_/ / / / /
 ___/ / /_/ / / /___/ /___/ /  / / /_/ /
/____/\___\_\/_____/\____/_/  /_/_____/

Microsoft SQL Server Command Line Tool

(or similar branded design)

Interactive Menu Options
  • Connect: Guided connection setup (server, auth method, database)
  • Query: Enter and execute queries interactively
  • Config: Manage contexts and endpoints (sqlcmd config commands)
  • Containers: Start/stop/manage SQL containers
  • Help: Browse commands and examples
  • Recent: Show recent connections/queries
Navigation
  • Arrow keys / number selection
  • Fuzzy search for commands
  • Breadcrumb navigation
  • q or Esc to exit

Implementation Considerations

  • Go TUI libraries: bubbletea, tview, promptui
  • ASCII art generator or hand-crafted design
  • Keyboard handling across platforms (Windows, Linux, macOS)
  • Fallback for non-interactive terminals
  • Integration with existing command structure

Inspiration

  • Azure CLI interactive mode (az interactive)
  • GitHub CLI (gh)
  • lazygit, lazydocker
  • k9s (Kubernetes TUI)

Tasks

  • Design ASCII art header/logo
  • Choose TUI library
  • Design menu structure and navigation
  • Implement main menu
  • Add guided connection wizard
  • Add interactive query mode
  • Test on Windows, Linux, macOS terminals
  • Document the interactive mode
主要语言
Go
星标
601
派生
91
PR 合并指标
30 天内没有已合并 PR

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

  • 提供 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 没有贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

microsoft/go-sqlcmd 的其他 Issue

查看 microsoft/go-sqlcmd 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。