关于
本地投研报告库,双击 index.html 即可打开,无需服务器。要使用「记录」功能,双击 start-server.command(macOS)或 start-server.bat(Windows)启动本地服务,浏览器会自动打开。
MLF/
├── index.html 首页:板块选择
├── sector.html 板块页:该板块的报告列表
├── notes.html 记录页:本地速记(数据存 data/notes.js)
├── about.html 关于页
├── start-server.command 双击启动本地服务(macOS,记录功能推荐)
├── start-server.bat 双击启动本地服务(Windows)
├── update-index.bat 双击更新报告清单(Windows)
├── update-index.command 双击更新报告清单(macOS)
├── reports/ 所有研究报告
│ ├── 大盘/ group=market → 首页「趋势」
│ ├── 半导体材料/ group=sector → 首页「板块」(默认)
│ │ ├── _sector.json 板块简介 + group(可选)
│ │ └── 20261010_行业整体估值水平诊断.html
│ ├── PCB/
│ ├── AI短剧/
│ ├── 端侧SoC/
│ ├── 传媒/
│ ├── 保险/ group=sector → 首页「板块」
│ │ └── 20261010_保险板块投资分析报告.html
│ ├── 个股/ group=stock → 首页「个股」
│ └── 其他/ group=other → 首页「其他」
├── data/reports.js 报告清单(自动生成,勿手改)
├── data/notes.js 记录数据(记录页自动读写)
├── tools/build-index.ps1 生成清单的脚本(Windows)
├── tools/build-index.py 生成清单的脚本(macOS / Linux)
├── css/style.css
└── js/
新增报告
- 把报告放进
reports/板块名/,文件名用日期_主题.html,如20261011_个股深度_沪电股份.html。 - 双击根目录的
update-index.bat(Windows)或update-index.command(macOS),刷新首页即可。
可选:在报告 <head> 里加 <meta name="description" content="一句话结论">,列表中会显示这句结论;加 <meta name="report-type" content="个股深度"> 可指定类型(否则按标题关键词自动识别)。
新增板块
在 reports/ 下新建一个以板块名命名的文件夹,放入报告后运行 update-index.bat。如需板块简介,在文件夹里放一个 _sector.json:
{ "desc": "板块简介" }
首页四个区块
首页按板块文件夹里 _sector.json 的 "group" 值,把报告分到四个区块:
"group": "market"→ 趋势:大盘与行业趋势类(如reports/大盘/),按报告列表展示"group": "sector"→ 板块:默认值,以板块卡片展示,点击进入该板块报告列表"group": "stock"→ 个股:个股首次覆盖 / 深度跟踪(如reports/个股/)"group": "other"→ 其他:未归入以上三类的资料(如reports/其他/)
新建板块文件夹若不写 _sector.json,默认归到「板块」。
记录功能
导航栏的「记录」是一个本地速记本,用来随手记投资想法、观察和复盘。记录数据保存在 data/notes.js(项目文件,随报告库目录一起 git 提交 / 备份 / 换机器)。
- 推荐用法(任何浏览器):双击
start-server.command(macOS)/start-server.bat(Windows)启动本地服务,浏览器自动打开http://127.0.0.1:8765/。记录页状态栏显示「✓ 本地服务」,保存即写入data/notes.js,无需任何连接操作。 - 备用用法(不启动服务):双击
index.html用 Chrome / Edge 打开,在记录页点「保存到 mmlf 文件夹」连接一次data/notes.js(File System Access API),之后自动写入;每次打开自动恢复连接,偶尔需重新授权。 - 都不满足时(如 Safari 直接打开静态页)退回 localStorage 存储,记录仍在页面里可见,可用「导出备份」手动留存。
- 打开记录页时,localStorage 与
data/notes.js的内容会自动合并(同一条取更新的版本),所以换了浏览器或忘开服务也不会丢数据。 - 每条记录可选关联一个板块,标题留空自动取正文首行;支持搜索、编辑、删除、多行(
Ctrl + Enter快速保存)、超过 3 行自动折叠。