Skip to content

BlairCode/baoyan_workbench

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

推免准备本地工作台

一个 本地优先、隐私友好、轻量可改造 的推免 / 保研准备管理系统。
用一个网页工作台集中管理:院校项目、导师套磁、申请材料、待办事项与面试题库。

Python 3.x SQLite HTML CSS JavaScript Local first MIT License

项目简介

推免准备不是单纯填几张表,而是一个持续数月的信息管理过程:

  • 院校、学院、夏令营、预推免、九推信息不断变化;
  • 导师主页、研究方向、近期论文、套磁信和回复状态分散在不同地方;
  • 简历、成绩单、证明材料、报名表、面试稿需要反复修改版本;
  • Excel 可以记录进度,但和本地文件、导师信息、院校材料之间的关联并不顺手;
  • 在线工具虽然方便,但个人材料、成绩单、证件、套磁记录等内容并不适合随意上传云端。

这个项目希望把 “表格记录”“本地资料管理”“申请进度看板” 连接到同一个轻量网页中,让推免准备过程更清晰、更安全、更容易备份。

预览

总览 套磁
总览页 套磁页
资源 院校
资源页 院校页
待办 面试
待办页 面试页

核心功能

模块 功能说明
总览 数据大屏展示关注院校、入营 / 报名、优营 / 通过、套磁回复 / 发送、待办和近期文件
套磁 管理导师信息、套磁状态、套磁信、相关论文和本地文件,自动合并重复导师展示
资源 按文件夹层级浏览材料,支持搜索、上传、归类、备注、预览和删除,并显示文件类型图标
院校 管理学校、学院 / 项目、申请阶段、截止时间、账号、状态和备注,支持状态排序与同状态手动排序
待办 跟踪任务范围、截止日期、优先级、完成状态和备注
面试 整理面试题、答案要点、主题分类和标签
设置 修改头像、工作台标题、首页横幅、主题配色和页面风格
备份 一键备份本地 SQLite 数据库,降低误删和版本丢失风险

适合人群

这个项目适合:

  • 正在准备推免、保研、夏令营、预推免、九推的同学;
  • 同时关注多个学校、多个学院、多个导师的申请者;
  • 需要管理大量简历、成绩单、证明、报名表、套磁信和论文材料的人;
  • 希望材料保存在本地,而不是上传到在线系统的人;
  • 觉得纯 Excel 不够顺手,但又不想使用复杂管理软件的人。

项目特点

本地优先

默认运行在:

http://127.0.0.1:8848

数据保存在本机,不依赖云服务。

隐私友好

个人数据库、头像、备份文件和本地材料目录默认不会提交到 Git:

data/
保研准备/

项目适合个人本地使用,不需要注册账号,也不会主动上传个人文件。

轻量直接

项目只使用:

  • Python 标准库 HTTP 服务;
  • SQLite;
  • 原生 HTML / CSS / JavaScript。

没有复杂框架,方便阅读、修改和二次开发。

文件友好

网页中记录信息,本地文件仍然可以用系统默认程序打开。
PDF、Word、PPT、表格、图片等材料都保留原有文件管理习惯,同时在资源页中获得更清晰的索引和归类。

易于改造

后端已经拆分为标准 Python 包,前端也按页面和通用能力拆分为模块。你可以继续扩展:

  • 增加导师评分;
  • 增加院校优先级;
  • 增加报名材料清单;
  • 增加面试复盘;
  • 增加导出功能;
  • 增加更多数据看板指标。

快速开始

1. 安装 Python

确保本机已经安装 Python 3。可以在终端中检查:

python --version

2. 启动项目

在项目根目录运行:

python app.py

浏览器打开:

http://127.0.0.1:8848

3. Windows 快速启动

Windows 用户也可以直接双击:

start.bat

4. 修改端口

如果默认端口被占用,可以手动指定端口:

$env:BAOYAN_PORT="8891"
python app.py

然后访问:

http://127.0.0.1:8891

推荐使用流程

  1. 将个人申请材料放入 保研准备/ 目录;
  2. 启动项目并进入网页工作台;
  3. 在左侧点击 扫描材料,同步本地文件索引;
  4. 在资源页为文件设置归类,例如:基本材料套磁院校项目面试参考
  5. 归类为 套磁 的文件,可以关联具体导师;
  6. 归类为 院校 的文件,可以关联具体学校或项目;
  7. 在套磁页集中查看导师信息、套磁信和相关文件;
  8. 在院校页集中管理项目时间、账号、状态和备注;
  9. 在待办页记录报名、材料、邮件、面试等任务;
  10. 定期点击 备份数据,备份 SQLite 数据库。

项目结构

.
├── app.py                 # 轻量启动入口
├── baoyan_app/            # 后端应用包
│   ├── analytics.py       # 总览统计与数据大屏指标
│   ├── bootstrap.py       # 启动迁移、清理、扫描
│   ├── config.py          # 路径、端口、默认设置
│   ├── contact.py         # 套磁工作区聚合
│   ├── db.py              # SQLite 表结构与种子数据
│   ├── materials.py       # 文件扫描、分类、上传、删除
│   ├── repositories.py    # 通用 CRUD、下拉选项、排序
│   ├── server.py          # HTTP 路由与静态文件服务
│   ├── settings.py        # 设置与头像
│   ├── taxonomy.py        # 状态、阶段、分类字典
│   └── utils.py           # 通用工具
├── web/
│   ├── index.html         # 页面入口
│   ├── style.css          # 页面样式
│   └── js/                # 前端模块
├── imgs/                  # README 展示截图
└── data/                  # 本地数据库和头像,默认不提交

本地数据目录

项目运行后,会自动使用或生成本地私有目录:

data/
├─ app.db
└─ backups/

保研准备/
└─ 网页添加/

建议将自己的申请材料统一放在 保研准备/ 目录下,例如:

保研准备/
├─ 基本材料/
├─ 套磁信/
├─ 论文/
├─ 院校项目/
├─ 夏令营/
├─ 面试/
└─ 网页添加/

资源页会扫描本地文件,并按目录层级展示。

技术栈

层级 方案
后端 Python 标准库 HTTP 服务
数据库 SQLite
前端 原生 HTML / CSS / JavaScript
数据位置 本机 data/app.db
文件位置 本机 保研准备/
运行方式 本地浏览器访问 127.0.0.1

联系方式

如果这个项目对你有帮助,欢迎Star本项目。或者你也正在准备推免 / 保研,欢迎交流使用体验和改进建议。

License

本项目基于 MIT License 开源。
本网站为开源项目,仅供学习与交流使用,使用风险由用户自行承担

Releases

Contributors

Languages