Skip to content

borenchan/fun-cli

Repository files navigation

English

License Stars Forks GitHub last commit GitHub repo size Static Badge
Fun CLI Rust

🎮 fun-cli —— 你的终端游乐场

"人生太长,有趣的CLI太少"

fun-cli 是一个不断生长的命令行娱乐工具集,专为那些觉得上班无聊的人打造。在这里,你可以:

  • ☔ 随时为你的家人和朋友查询天气
  • 🎵 用 ASCII 频谱播放收藏夹音乐
  • 🕹️ 玩雷霆战机,重获童年快乐(沉浸式玩耍,按 Q 退出
  • 🟦 俄罗斯方块,经典益智游戏(方向键控制,空格快速下降
  • ⚫⚪ 五子棋人机对战,挑战 AI 智慧(4种难度,地狱模式让你怀疑人生
  • 💻 监控你的电脑,拥有酷炫的监控面板
  • 📝 运行在 所有平台Windows,MacOS,Linux
  • ...或者贡献你的奇思妙想!

📦 快速开始

从发行包安装(支持所有平台)

  1. 下载最新版发行包 => release
  2. 添加到您的环境变量 PATH
  3. 恭喜你!可以开始愉快的玩耍了
fun -h    # 查看帮助

从源码安装

环境要求:需要 Rust ≥1.80

# 克隆仓库
git clone https://github.com/borenchan/fun-cli.git
cd fun-cli

# 编译并安装
cargo build --release
cargo install --path .  # 安装到全局

# 运行单元测试
cargo test -- --nocapture  # 禁止输出被吞

# 恭喜你!可以开始愉快的玩耍了
fun -h    # 查看帮助

🎯 使用示例

游戏功能

五子棋(Gomoku)◉◎

# 默认难度(简单)
fun game -s 3

# 中等难度
fun game -s 3 -d 2

# 困难模式(Minimax 深度4)
fun game -s 3 -d 3

# 地狱模式(Minimax 深度6 + 高级棋型识别)
fun game -s 3 -d 4

# 自定义棋盘大小(9-19)
fun game -s 3 -w 19 -H 19 -d 3

游戏特性:

  • 🎮 4种AI难度:从随机菜鸟到地狱魔王
  • 🧠 智能AI:Minimax搜索 + Alpha-Beta剪枝 + 置换表优化
  • 🎨 棋型识别:活四、冲四、活三、双三、四三等复杂棋型
  • 性能优化:候选位置智能剪枝,地狱模式也能流畅运行
  • 🎯 完美防守:AI绝不会漏掉任何威胁

操作说明:

  • 方向键:移动光标
  • Enter:落子
  • Q:退出游戏
  • R:游戏结束后重新开始

俄罗斯方块(Tetris)🟦

fun game -s 2

雷霆战机(Thunder Fighter)🕹️

fun game -s 1

其他功能

天气查询 ☔

fun weather 北京

音乐播放 🎵

fun music play /path/to/your/music.mp3

系统监控 💻

fun osystem

🚀 为什么加入?

  • 用最快乐的方式练习编程 快乐是编程的根本动力
  • 无需严肃的代码审查,好玩是第一生产力
  • 摆脱重复且无聊的工作循环,享受编程最原始的快乐

🤝 如何贡献?

  1. 编写代码并测试
   cargo fmt  # 格式化代码
   cargo clippy  # 检查代码质量
   cargo test  # 运行测试
  1. 提交一个 PR 并附上:功能说明
  2. 写代码时默念三遍「 borrow checker 是朋友」

我们不需要完美的代码,只需要有趣的灵魂!

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000OOkxxxddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddxxkkO0000000000
0000OkxoollloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolllodxO0000000
000kdlloodddddxddxxxxxddxxxxdxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxxxddddollodO00000
0OxlloddxxxxxxxxxxxxxxxxddxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxdddoloxO000
Odllddxxxxxxxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddxxxxxxxxxxxxxxxxxdolox000
xllodxxxxxxxxxxxxdolc:::::::::codxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdl:,''',:odxxxxxxxxxxxxxdolok00
dlodxdxxdxxxxxxxdc..............;oxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddl,...','...;oxxxxxxxxxxxxxdllx00
oloxxxxxxxxxxxxxc. .;:::::::::'  :dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxl' .cddxdo;. ,dxxxxxxxxxxxxdoldO0
oloxxxxxxxxxxxxd:. ,cccccccccc;. ,dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxd:..:dxxxdxo' .lxxxxxxxxxxxxdoldO0
olodxxxxxxdddddd:. ,cccccccccc;. ,odddddxxxxxxxxxxxxxxxxxxxxxxxxxxxc. 'ldddxdc. 'oxxxxxxxxxxxxdoldO0
olodxxxdo:'...... .,cccccccccc;. ......';ldxxxxxxxxxxxxxxxxxxddddxxd:. .,;:;'..'ldxddddxxdxxxxdoldO0
olodxxxl' ..'''''';cccccccccccc;''''''.. .cdxxxxxxxxxxxxxdoc,'..',:odo:'.....,cooc;'..',:ldxxxdoldO0
olodxxd:  ,cccccccccccccccccccccccccccc;. ,dxxxxxxxxxxxxdc...',,'. .:oxddooodddc. .',,'...;oxxdoldO0
olodxxd; .;cccccccccccccccccccccccccccc:. ,dxxxxxxxxxxxdc. 'ldxddo, .:dxxxxxxdc. 'lddddo;. ;dxdoldO0
oloxxxd; .;cccccccccccccccccccccccccccc:. 'dxxxxxxxxxxxd; .cddddxdl. ,oxxxxdxd; .cddddddo. 'oxdoldO0
oloxxxd; .,cccccccccccccccccccccccccccc:. ,oxxxxxxxxxxxd:. ,oddddo;. ;dxxxxdddc. ,odxxdd:. ;dxdoldO0
olodxxd:. ':cccccccccccccccccccccccccc:,. ;dxxxxxxxxxxxxd:. .,;;,. .;oxdooloodd:. .,;;,...,odxdoldO0
olodxxxo;. .......':cccccccccc:'....... .,oxxxxxxxxxxxxxxdo:'....';ldl;'.....':oo:'....';ldxxxdoldO0
olodxxxxdl:;;;;;.  ,cccccccccc;. .,;;;;:ldxxxxxxxxxxxxxxxxxxddddddxd:. .;:c:,. .lddddoddxxxxxxdoldO0
olodxxxxxxxxxxxd:. ,cccccccccc;. ;dxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxc. ,odddddc. 'oxxxxxxxxxxxxdoldO0
olodxdxxxxxxxxxd:. ,cccccccccc;. ;dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx:. ;ddddddo' .lxxxxxxxxxxxxdoldO0
olodddxxxxxxxxxxl. .',,,,,,,,'. .cxxdxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxl' .:odddl;. ;dxxxxxxxxxxxxdllx00
dlodxxxxxxxxxxxxdl,............,cdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdl,....'....:oxxxxxxxxxxxdxdllx00
xllodxxxxxxxxxxdxxddooooooooooddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdl:;,,,;codxxxxxxxxxxxxddoloO00
Oxllodxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxdolok000
0Oxoloddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddxxxxxxxxxxxxdddollok0000
000kdollooddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddoolloxO00000
00000OkdoollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloodxkO0000000
00000000OOkkxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkOO00000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

About

An interesting CLI developed based on the Rust

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages