Skip to content

SiliconVault | 基于 Vue3 + Electron 的简约高级感电子元件管理助手。iOS 审美风格,丝滑交互体验。非常适合新手,电子爱好者使用。

Notifications You must be signed in to change notification settings

Maxthten/SiliconVault

Repository files navigation

其他语言版本: English, 中文.

SiliconVault - 电子元器件库存管理系统

你是否因为电子元件过多无法管理而烦恼,是否因为专业管理软件繁琐,配置困难而苦恼,这里一个非常适合电子爱好者,使用的电子元器件管理软件,保证其核心功能绝对稳定可靠,并且Ui符合现代化审美。

如果是公司等管理请移步其他软件,这只适合电子爱好者等便于个人管理。

图文版本可见:告别混乱:我如何用 SiliconVault 优雅地管理电子元器件库存 • Maxton‘s Blog

🚀 项目简介

SiliconVault 是一款基于 Electron + Vue 3 + TypeScript 构建的现代化电子元器件库存管理系统。它专为电子工程师、创客和硬件爱好者设计,帮助您高效管理元器件库存、BOM清单和生产流程。

想象一下:你再也不用在零件盒里翻找那个特定的 10kΩ 电阻,也不用担心生产时发现某个关键芯片库存不足。SiliconVault 就是你的数字元器件管家!

✨ 核心特性

📦 智能库存管理

  • 分类管理:支持电阻、电容、电感、芯片等10+种元器件分类
  • 字段定制:不同分类有不同的字段标签(如电阻的"阻值"、电容的"容值")
  • 图片文档:支持上传元器件图片和数据手册
  • 位置追踪:记录元器件存放位置,告别"找不着"的尴尬
  • 智能搜索:支持名称、参数、分类等多维度搜索
  • 批量操作:支持批量增减库存、批量编辑信息

🏭 BOM项目管理

  • 项目清单:创建和管理BOM项目清单
  • 智能关联:BOM项目自动关联库存数据
  • 生产执行:一键扣减库存,支持批量生产数量设置
  • 库存预警:生产前自动检查库存充足性
  • 拖拽排序:直观的拖拽界面管理项目顺序
  • 文件关联:支持关联原理图、PCB文件等文档

📊 消耗分析看板

  • 实时统计:按日/周/月分析元器件消耗情况
  • 可视化图表:时间线趋势图、分类玫瑰图、热力图
  • 智能分析:自动识别高消耗元器件和活跃项目
  • 消耗强度:低/中/高三档消耗强度评估
  • 项目追踪:追踪特定项目的消耗历史
  • 数据钻取:支持从图表直接钻取到详细数据

🔄 数据操作中心

  • 批量编辑:支持批量增减库存数量
  • 拖拽排序:直观的拖拽界面管理
  • 导入导出:CSV导入导出,支持完整资源包(.svdata)
  • 操作日志:完整的操作历史记录和撤销功能
  • 冲突解决:智能检测导入冲突并提供解决方案
  • 模板下载:提供标准导入模板

🛡️ 系统维护与监控

  • 自动备份:定时自动备份数据库
  • 资源清理:智能扫描并清理未使用的图片和文档
  • 数据库优化:定期VACUUM优化数据库性能
  • 补货监控:智能监控低库存并提醒补货
  • 暂停功能:支持临时暂停补货提醒
  • 健康检查:实时监控系统健康状态

⚡ 性能与用户体验

  • 暗色主题:现代化暗色界面设计,保护视力
  • 响应式布局:适配不同屏幕尺寸
  • 动画效果:流畅的页面切换动画
  • 快捷键支持:常用操作支持键盘快捷键
  • 离线使用:完全本地化存储,无需网络连接
  • 多平台支持:Windows、macOS、Linux全平台支持

🛠️ 技术栈

前端技术

  • Vue 3 - 现代化前端框架,使用Composition API
  • TypeScript - 类型安全的开发体验
  • Naive UI - 优雅的UI组件库
  • Vue Router - 单页面应用路由
  • Vue Draggable Plus - 拖拽功能支持
  • ECharts - 数据可视化图表库
  • Vicons - 丰富的图标库支持

后端技术

  • Electron - 跨平台桌面应用框架
  • Better-SQLite3 - 高性能本地数据库
  • Electron Store - 应用配置存储
  • Adm-Zip - ZIP压缩解压功能
  • PapaParse - CSV文件解析
  • Node.js - 后端运行时环境

开发工具

  • Vite - 快速的构建工具
  • Electron Vite - Electron专用构建配置
  • ESLint + Prettier - 代码质量和格式化
  • Vue TSC - Vue TypeScript类型检查
  • Electron Builder - 应用打包工具

📁 项目结构

SiliconVault/
├── src/
│   ├── main/           # 主进程代码
│   │   ├── index.ts    # 应用入口和窗口管理
│   │   ├── db.ts       # 数据库操作核心
│   │   ├── backup.ts   # 备份管理
│   │   ├── maintenance.ts # 系统维护
│   │   └── analytics.ts # 消耗分析统计
│   ├── preload/        # 预加载脚本
│   │   └── index.ts    # 主进程与渲染进程通信
│   └── renderer/       # 渲染进程
│       └── src/
│           ├── assets/ # 静态资源
│           ├── components/ # 可复用组件
│           │   ├── InventoryCard.vue      # 库存卡片组件
│           │   ├── BomEditModal.vue      # BOM编辑模态框
│           │   ├── BomRunModal.vue       # 生产执行模态框
│           │   ├── CategoryRuleModal.vue # 分类规则配置
│           │   ├── ImportConflictModal.vue # 导入冲突解决
│           │   ├── ExportWizardModal.vue # 导出向导
│           │   ├── EditDialog.vue         # 编辑对话框
│           │   ├── BatchEditModal.vue    # 批量编辑
│           │   ├── Sidebar.vue           # 侧边栏导航
│           │   ├── BottomBar.vue         # 底部标签栏
│           │   ├── TitleBar.vue          # 标题栏
│           │   └── ThemeToggle.vue       # 主题切换组件
│           ├── views/  # 页面视图
│           │   ├── Inventory.vue      # 库存管理
│           │   ├── BomProject.vue     # BOM项目管理
│           │   ├── Consumption.vue    # 消耗看板
│           │   ├── ReplenishView.vue  # 补货监控
│           │   ├── OperationLog.vue   # 操作日志
│           │   ├── DataCenter.vue     # 数据中心
│           │   └── SettingsView.vue   # 系统设置
│           ├── router/ # 路由配置
│           ├── config/ # 配置文件
│           │   └── animations.ts       # 动画配置
│           ├── utils/   # 工具函数
│           │   └── theme.ts           # 主题配置
│           └── data/   # 静态数据
│               └── quotes.ts           # 名言数据
├── resources/          # 应用资源文件
│   ├── icon.icns       # macOS图标
│   ├── icon.ico        # Windows图标
│   ├── icon.png        # Linux图标
│   ├── license.txt     # 许可证文件
│   └── inventory.db    # 示例数据库
├── build/             # 构建配置和图标
└── dist/              # 构建输出目录

🚀 快速开始

环境要求

  • Node.js 18+
  • pnpm 8+ (推荐) 或 npm 9+
  • Git (用于版本控制)

安装依赖

# 使用 pnpm (推荐)
pnpm install

# 或使用 npm
npm install

开发模式

# 启动开发服务器
pnpm dev

构建应用

# Windows
pnpm build:win

# macOS
pnpm build:mac

# Linux
pnpm build:linux

# 仅构建不打包
pnpm build:unpack

代码质量检查

# 类型检查
pnpm typecheck

# 代码格式化
pnpm format

# 代码检查
pnpm lint

💡 使用指南

首次使用

  1. 启动应用后,系统会自动在文档目录创建 SiliconVault 文件夹
  2. 数据库文件 inventory.db 将存储所有库存数据
  3. 图片和文档资源存储在 assets 子目录中
  4. 备份文件存储在 backups 子目录中

添加元器件

  1. 进入库存管理页面
  2. 点击"+"按钮添加新元器件
  3. 根据分类填写相应字段
  4. 上传图片和数据手册(可选)
  5. 设置最小库存阈值
  6. 记录存放位置信息

创建BOM项目

  1. 进入BOM项目管理页面
  2. 创建新项目并填写描述
  3. 从库存中选择元器件添加到BOM
  4. 设置每个元器件的用量
  5. 关联相关文档文件
  6. 设置项目优先级和排序

生产执行

  1. 在BOM项目页面点击"生产执行"
  2. 设置生产数量
  3. 系统自动检查库存充足性
  4. 确认后自动扣减库存
  5. 生成生产记录
  6. 更新消耗统计数据

消耗分析(新增功能)

  1. 进入消耗看板页面
  2. 选择时间范围(日/周/月)
  3. 查看消耗趋势、分类统计和热力图
  4. 分析高消耗元器件和活跃项目
  5. 钻取查看详细消耗记录
  6. 导出分析报告

数据管理

  1. 进入数据中心页面
  2. 选择导入/导出功能
  3. 使用CSV模板进行批量导入
  4. 导出完整资源包用于数据迁移
  5. 处理导入冲突
  6. 下载标准模板

🔧 高级功能

批量操作

  • 支持批量增减库存数量
  • 可设置增加或减少模式
  • 自动检查负库存风险
  • 支持按分类筛选批量操作
  • 提供操作预览和确认

数据导入导出

  • CSV导入:从Excel或其他系统导入数据
  • CSV导出:导出为表格格式
  • 资源包导出:导出完整项目包含图片文档
  • 模板下载:提供标准导入模板
  • 冲突解决:智能检测和解决导入冲突

系统设置

  • 自定义存储路径
  • 备份和恢复功能
  • 数据库优化工具
  • 资源清理工具
  • 动画效果配置
  • 主题切换支持

补货监控

  • 实时监控库存状态
  • 智能预警低库存
  • 支持暂停监控功能
  • 自定义监控阈值
  • 健康状态可视化

⚡ 性能优化

数据库性能

  • SQLite优化:使用Better-SQLite3提供高性能数据库操作
  • 查询优化:所有数据库查询都经过性能优化
  • 索引使用:关键字段建立索引,提升查询速度
  • 事务处理:批量操作使用事务保证数据一致性
  • 连接池管理:优化数据库连接使用

内存管理

  • 懒加载:图片和文档按需加载,减少内存占用
  • 虚拟滚动:大数据列表使用虚拟滚动技术
  • 缓存策略:频繁访问的数据进行缓存
  • 资源清理:自动清理未使用的图片和文档
  • 垃圾回收:优化内存使用和回收

响应式优化

  • Vue 3响应式:利用Vue 3的Composition API优化响应式性能
  • 组件优化:关键组件进行性能优化和懒加载
  • 渲染优化:减少不必要的重渲染
  • 事件优化:优化事件处理性能
  • 动画优化:使用CSS动画提升性能

构建优化

  • Vite构建:使用Vite进行快速构建和热重载
  • 代码分割:按需加载代码,减少初始包大小
  • Tree Shaking:自动移除未使用的代码
  • 压缩优化:资源文件压缩优化
  • 缓存策略:构建缓存提升开发效率

🐛 故障排除

常见问题

Q: 应用启动失败或白屏? A: 尝试删除用户数据目录下的 SiliconVault 文件夹重新启动

Q: 图片上传失败? A: 检查应用是否有文件系统读写权限

Q: 数据库损坏? A: 使用设置页面的"数据库优化"功能或从备份恢复

Q: 消耗统计数据不准确? A: 确保操作日志完整,消耗统计基于操作日志计算

Q: 应用运行缓慢? A: 尝试清理未使用的资源文件,优化数据库

Q: 导入数据失败? A: 检查CSV文件格式是否正确,使用标准模板

性能优化建议

  1. 定期清理:使用系统设置中的资源清理功能
  2. 数据库优化:每月执行一次数据库优化
  3. 文件管理:及时删除不需要的图片和文档
  4. 数据备份:重要数据定期备份
  5. 系统更新:保持应用版本更新

日志查看

应用操作日志存储在数据库中,可通过"操作日志"页面查看详细的操作历史。

🤝 贡献指南

我们欢迎各种形式的贡献!无论是代码改进、文档完善还是功能建议,都可以通过以下方式参与:

  1. Fork 本项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

开发规范

  • 使用 TypeScript 确保类型安全
  • 遵循 ESLint 和 Prettier 代码规范
  • 提交前运行 pnpm typecheckpnpm lint
  • 为新增功能添加适当的注释和文档
  • 性能优化:新功能需要考虑性能影响
  • 测试覆盖:重要功能需要添加测试用例

功能建议

如果您有新的功能想法,请先检查:

  1. 是否与项目定位相符(个人电子爱好者使用)
  2. 是否已经有类似功能或计划
  3. 是否会影响现有功能的稳定性

📄 许可证

本项目采用 GNU Affero General Public License v3.0 (AGPL-3.0) 许可证。 查看 LICENSE 文件了解详情。

这意味着:

  1. 🛡️ 免费自由:任何人都可以免费使用、修改和分发本软件。
  2. 🔄 强制开源:如果你修改了本软件,或者基于本软件开发了网络服务(SaaS),你必须向用户公开你的修改代码。
  3. ⚖️ 免责声明:本软件按"原样"提供,不含任何担保。

🙏 致谢

感谢以下开源项目为 SiliconVault 提供技术支持:

🔮 未来规划

计划

  • [x]多语言支持(中英文切换)
  • [x]主题切换功能(亮色/暗色模式)
  • [ ]移动端
  • [ ]云端同步功能

温馨提示:虽然 SiliconVault 能帮你管理元器件,但它不能帮你找到掉在地上的0805电容。那个,还得靠你自己的好眼力!👀

性能提示:如果你的元器件库超过1000种,建议定期使用数据库优化功能,就像给电脑做一次"磁盘碎片整理"一样,能让系统运行更流畅!

安全提示:重要数据请定期备份,SiliconVault 提供了完善的备份机制,但数据安全最终还是要靠用户自己!


Made with ❤️ for the electronics community


版本信息: v1.3.0
最后更新: 2026-02-11
技术支持: 如有问题请提交 Issue 或联系开发者

About

SiliconVault | 基于 Vue3 + Electron 的简约高级感电子元件管理助手。iOS 审美风格,丝滑交互体验。非常适合新手,电子爱好者使用。

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published