Thanks to visit codestin.com
Credit goes to github.com

Skip to content

NoyaMrXiao/dev-tools

Repository files navigation

DevToolBox - 开发工具宝盒

DevToolBox Logo

New Machine, Ready in Minutes
新机到手,分钟就绪

为新机用户打造的开发环境快速部署工具
一键下载所有必需的开发工具,节省 2-3 小时配置时间


🎯 专为新机用户设计

刚买新电脑?系统重装?新入职需要配置开发环境?

DevToolBox 帮你快速部署开发环境!告别逐个下载的繁琐流程,一键获取 Python、Node.js、VSCode、Git 等主流开发工具。

为什么选择 DevToolBox?

传统方式 DevToolBox
逐个搜索官网 集中统一管理
手动选择版本和平台 自动识别系统架构
耗时 2-3 小时 仅需 5-10 分钟
容易下载错版本 智能推荐正确版本
需要记住所有工具 预设常用工具列表

📦 应用标识

  • 应用名称: DevToolBox
  • 中文名: 开发工具宝盒
  • 主标语: "New Machine, Ready in Minutes" / "新机到手,分钟就绪"
  • 副标语: "Your Essential Dev Tools, One Click Away" / "开发工具,一键即达"
  • 版本: v1.0.0
  • 目标用户: 新机用户、系统重装用户、初学者、新入职开发者

📁 项目结构

DevToolBox/
├── src/                          # 源代码目录
│   └── dev_tools_downloader/     # 主包
│       ├── __init__.py
│       ├── config/               # 配置管理
│       │   ├── __init__.py
│       │   └── settings.py
│       ├── core/                 # 核心功能
│       │   ├── __init__.py
│       │   └── downloader.py
│       ├── gui/                  # GUI界面
│       │   ├── __init__.py
│       │   └── main_window.py
│       └── utils/                # 工具函数
│           ├── __init__.py
│           ├── helpers.py
│           └── logger.py
├── tests/                        # 测试目录
│   ├── __init__.py
│   ├── conftest.py
│   ├── test_config.py
│   └── test_helpers.py
├── docs/                         # 文档目录
├── assets/                       # 资源文件
│   ├── icons/
│   └── images/
├── logs/                         # 日志目录
├── scripts/                      # 脚本目录
├── main.py                       # 主入口文件
├── pyproject.toml               # 项目配置
├── requirements.txt             # 依赖列表
├── uv.lock                      # 锁定文件
├── run.py                       # Python启动脚本
├── run.bat                      # Windows启动脚本
├── run.sh                       # Unix启动脚本
└── README.md                    # 说明文档

✨ 核心功能

专为新机配置设计

  • 🚀 批量下载: 勾选工具,一次性下载所有需要的
  • 🎯 智能识别: 自动检测系统架构(x64/ARM64/Intel/Apple Silicon)
  • 🔄 版本推荐: 自动获取最新稳定版/LTS版本
  • 节省时间: 从 2-3 小时缩短到 5-10 分钟
  • 📋 版本选择: 支持选择特定版本和平台
  • 📊 进度跟踪: 实时显示下载进度和速度
  • 📝 详细日志: 完整的操作日志记录
  • 🌍 跨平台: 支持 Windows、macOS、Linux

典型使用场景

  • 新购电脑: 全新电脑快速配置开发环境
  • 系统重装: 重装系统后快速恢复工作环境
  • 新员工入职: 统一团队开发工具版本
  • 多设备同步: 在多台设备上保持环境一致

支持的工具

  • Python: 最新稳定版Python解释器
  • Node.js: 最新LTS版本Node.js
  • Visual Studio Code: 最新版VSCode编辑器
  • Git: 最新版Git版本控制系统

安装要求

  • Python 3.7+
  • tkinter (通常随Python一起安装)
  • uv包管理器 (推荐) 或 pip

安装步骤

方法一:使用uv (推荐)

  1. 安装uv包管理器:

    # macOS/Linux
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Windows
    powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
  2. 克隆或下载项目到本地

  3. 安装依赖包:

    uv sync
  4. 运行程序:

    uv run python main.py

方法二:使用pip

  1. 克隆或下载项目到本地
  2. 安装依赖包:
    pip install -r requirements.txt

使用方法

使用uv运行 (推荐)

uv run python main.py

使用pip运行

python main.py

🚀 快速开始

三步搞定新机配置

第一步:选择下载目录

  • 默认为 Downloads/DevTools 文件夹
  • 也可以自定义下载位置

第二步:勾选需要的工具

  • 应用会自动识别你的系统(如:macOS ARM64)
  • 为你推荐对应版本
  • 勾选需要的工具(建议新机至少选择:Python、Node.js、VSCode、Git)

第三步:一键下载

  • 点击"开始下载"按钮
  • 去喝杯咖啡 ☕
  • 回来后安装下载的文件即可

预计节省时间:2-3 小时 → 5-10 分钟

📸 应用界面

DevToolBox 应用界面

界面说明

  • 下载目录: 选择文件保存位置
  • 工具选择: 勾选需要下载的开发工具
  • 控制按钮:
    • 开始下载: 开始下载选中的工具
    • 清空选择: 取消所有选择
    • 刷新版本: 重新获取最新版本信息
  • 进度条: 显示当前下载进度
  • 状态栏: 显示当前操作状态
  • 日志区域: 显示详细的下载日志

技术特点

  • 多线程下载: 使用后台线程避免界面卡顿
  • 错误处理: 完善的异常处理机制
  • 跨平台: 支持不同操作系统的下载链接
  • 用户友好: 直观的界面设计和操作流程
  • 现代化包管理: 支持uv和pip两种包管理方式
  • 依赖锁定: 使用uv.lock确保依赖版本一致性
  • 模块化设计: 清晰的代码结构和模块分离
  • 配置管理: 用户配置持久化存储
  • 日志系统: 完整的日志记录和GUI显示
  • 单元测试: 完善的测试覆盖
  • 智能版本获取: 支持多种API格式,失败时使用备用版本
  • 网络容错: 网络问题时自动降级到已知版本
  • 系统环境检测: 自动检测操作系统、架构、芯片类型等信息
  • 智能平台适配: 根据系统环境自动选择正确的工具版本

开发指南

开发环境设置

  1. 克隆项目

    git clone <repository-url>
    cd dev-tools-downloader
  2. 安装开发依赖

    uv sync --dev
  3. 运行测试

    uv run pytest
  4. 代码格式化

    uv run black src/ tests/
  5. 代码检查

    uv run flake8 src/ tests/
    uv run mypy src/

项目架构

  • config/: 配置管理模块,处理用户设置和工具配置
  • core/: 核心功能模块,包含下载逻辑和进度跟踪
  • gui/: GUI界面模块,基于Tkinter的用户界面
  • utils/: 工具函数模块,提供通用功能和日志系统

添加新工具

  1. config/settings.py 中添加工具配置
  2. core/downloader.py 中实现下载逻辑
  3. gui/main_window.py 中添加UI支持
  4. 添加相应的测试用例

系统环境检测

应用程序启动时会自动检测以下系统信息:

操作系统信息:

  • 操作系统类型(Windows/macOS/Linux)
  • 系统版本
  • 发布版本

硬件架构信息:

  • 芯片类型(Intel/AMD/ARM)
  • 架构类型(x64/ARM64/x86)
  • 处理器信息

Python环境:

  • Python版本
  • Python实现(CPython/PyPy等)
  • 编译器信息
  • 构建日期

系统能力检测:

  • GUI支持(Tkinter可用性)
  • 网络访问能力
  • 管理员权限
  • 磁盘空间状态

环境信息:

  • 虚拟环境状态
  • 包管理器检测(Homebrew/APT/YUM等)
  • 目录路径信息

平台适配:

  • 自动选择正确的工具版本
  • 根据架构选择对应的安装包
  • 智能下载URL构建

配置说明

配置文件位置:~/.dev_tools_downloader/config.json

主要配置项:

  • download_dir: 下载目录
  • max_concurrent_downloads: 最大并发下载数
  • timeout: 请求超时时间
  • retry_attempts: 重试次数
  • log_level: 日志级别
  • tools: 工具配置

注意事项

  • 确保网络连接正常
  • 下载大文件时请耐心等待
  • 某些工具可能需要管理员权限进行安装
  • 建议在下载完成后手动安装下载的文件

Tkinter支持

如果遇到Tkinter相关错误,请安装Tkinter支持:

macOS:

brew install python-tk

Ubuntu/Debian:

sudo apt-get install python3-tk

Windows: 通常随Python一起安装,如果缺失请重新安装Python并确保勾选Tkinter选项。

替代方案: 如果无法安装Tkinter,可以使用系统Python运行:

python3 main.py

系统要求

  • Windows: Windows 7及以上版本
  • macOS: macOS 10.12及以上版本
  • Linux: 主流Linux发行版

🎨 应用图标

应用提供多种尺寸的图标文件:

  • Windows: assets/icons/app.ico - Windows应用图标
  • macOS/Linux: assets/icons/icon.png - 通用PNG图标
  • 多尺寸PNG: assets/icons/icon_16.png ~ icon_1024.png

图标设计:

  • 主色调:蓝紫色渐变 (#4F46E5 - #6366F1)
  • 图标元素:工具箱造型,内含扳手/螺丝刀交叉图案
  • 设计风格:现代简约,扁平化设计

开发信息

  • 应用名称: DevToolBox
  • 开发语言: Python 3
  • GUI框架: Tkinter
  • 网络库: requests
  • 图像处理: Pillow
  • 开发时间: 2024年

许可证

本项目采用MIT许可证,详见LICENSE文件。

贡献

欢迎提交Issue和Pull Request来改进这个项目!

更新日志

v1.0.0

  • 初始版本发布
  • 支持Python、Node.js、VSCode、Git下载
  • 基础GUI界面
  • 多线程下载支持

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors