决赛作品更新
<<<<<<< HEAD 一款基于局域网的、开源的、跨平台文件共享工具。通过零配置的设备发现和高效的文件传输,让局域网内的设备间文件共享变得简单快捷。
演示视频: 你的浏览器不支持video标签。
======= 一款基于局域网的、开源的、跨平台文件共享工具。通过零配置的设备发现和高效的文件传输,让局域网内的设备间文件共享变得简单快捷。
fa1216eed7e2ae9cec00deebc2fcb0fbc8419fe8
core/ ├── config_loader.py # 配置管理(TOML格式) ├── discovery.py # 高性能设备发现服务(多线程+事件聚合) ├── event_bus.py # 高性能事件总线系统(支持聚合和防抖) ├── file_watcher.py # 文件系统监控 ├── tcp_server.py # TCP高速传输服务 ├── web_api.py # REST API服务 ├── tar_worker.py # TAR打包工作进程 ├── path_utils.py # 路径安全工具 └── error_handler.py # 统一错误处理
gui/ ├── models/ # 数据模型层(支持批量更新) │ ├── device_model.py # 设备数据管理(高性能批量处理) │ ├── file_model.py # 文件数据管理 │ ├── share_model.py # 共享配置管理 │ ├── connection_model.py # 连接状态管理 │ ├── transfer_model.py # 传输任务管理 │ └── log_model.py # 日志数据管理 ├── views/ # 视图层(增量更新优化) │ ├── device_list_view.py # 设备列表界面 │ ├── file_browser_view.py # 文件浏览器界面(图标支持) │ ├── transfer_list_view.py # 传输列表界面 │ ├── log_view.py # 日志显示界面 │ └── welcome_view.py # 欢迎页面 ├── presenters/ # 控制器层(智能更新策略) │ ├── device_presenter.py # 设备列表控制器(增量更新) │ ├── file_browser_presenter.py # 文件浏览控制器 │ ├── connection_presenter.py # 连接管理控制器 │ ├── transfer_presenter.py # 传输管理控制器 │ └── log_presenter.py # 日志控制器 ├── dialogs/ # 对话框组件 ├── app_controller.py # 应用主控制器(事件聚合) ├── main_window_mvc.py # 主窗口(MVC架构) └── worker_thread.py # 工作线程(异步任务处理)
pip install -r requirements.txt
python run_app.py
# 指定端口运行(用于多实例测试) python run_app.py --port 8081 python run_app.py 8082 # 位置参数形式
%APPDATA%/NetNeighbor_Plus/config.toml
~/.config/NetNeighbor_Plus/config.toml
配置文件使用 TOML 格式:
[service] name = "我的电脑" port = 8080 [[shares]] name = "文档" path = "/home/user/Documents" permissions = ["read", "download"] [[shares]] name = "共享文件夹" path = "/home/user/Shared" permissions = ["read", "download", "upload"]
GET /api/v1/shares
GET /api/v1/peers
GET /api/v1/files/{share_name}
POST /api/v1/upload/{share_name}
GET /api/v1/download/{share_name}
WebSocket /ws/events
_netneighbor._tcp.local.
项目包含高性能设备发现测试工具:
python test/simulator.py
该工具可以模拟500台设备同时上线,测试应用的性能表现:
A: 请确保:
A: 检查:
A: 建议:
欢迎提交 Issue 和 Pull Request!
# 使用不同端口启动 python run_app.py --port 8081
本项目采用开源许可证,详情请查看 LICENSE 文件。
感谢以下开源项目的支持:
邻里+ (NetNeighbor Plus) v3.4.0 - 高性能局域网文件共享,让连接更快更稳定!
邻里+ (NetNeighbor Plus)
<<<<<<< HEAD 一款基于局域网的、开源的、跨平台文件共享工具。通过零配置的设备发现和高效的文件传输,让局域网内的设备间文件共享变得简单快捷。
演示视频:
✨ 核心特性
🔍 高性能设备发现
======= 一款基于局域网的、开源的、跨平台文件共享工具。通过零配置的设备发现和高效的文件传输,让局域网内的设备间文件共享变得简单快捷。
演示视频:
✨ 核心特性
🔍 高性能设备发现
📁 灵活的文件共享
🚀 高效文件传输
🎨 现代化用户界面
🏗️ 技术架构
后端技术栈
前端技术栈
核心模块
🔧 Core 模块
🖥️ GUI 模块
🚀 快速开始
环境要求
安装依赖
运行应用
命令行参数
📖 使用指南
1. 首次运行
%APPDATA%/NetNeighbor_Plus/config.toml~/.config/NetNeighbor_Plus/config.toml2. 配置共享文件夹
3. 连接其他设备
4. 文件传输
🔧 配置文件
配置文件使用 TOML 格式:
权限说明
🌐 网络协议
HTTP API 端点
GET /api/v1/shares- 获取共享列表GET /api/v1/peers- 获取在线设备列表GET /api/v1/files/{share_name}- 浏览文件夹内容POST /api/v1/upload/{share_name}- 上传文件GET /api/v1/download/{share_name}- 下载文件WebSocket /ws/events- 实时事件通信TCP 高速传输
设备发现协议
_netneighbor._tcp.local.🧪 开发和测试
性能测试
项目包含高性能设备发现测试工具:
该工具可以模拟500台设备同时上线,测试应用的性能表现:
代码结构
🔒 安全特性
路径安全
网络安全
数据完整性
📊 性能特点
传输性能
内存优化
用户体验
❓ 常见问题
Q: 为什么看不到其他设备?
A: 请确保:
Q: 文件传输失败怎么办?
A: 检查:
Q: 如何提高传输速度?
A: 建议:
🤝 贡献指南
欢迎提交 Issue 和 Pull Request!
开发环境设置
代码贡献规范
🔄 版本历史
v3.4.0 (当前版本)
主要里程碑
🛠️ 故障排除
常见错误及解决方案
端口占用错误
设备发现问题
传输中断
📄 许可证
本项目采用开源许可证,详情请查看 LICENSE 文件。
🙏 致谢
感谢以下开源项目的支持:
邻里+ (NetNeighbor Plus) v3.4.0 - 高性能局域网文件共享,让连接更快更稳定!