这是一个基于 Jekyll 的静态网站,用于展示个人明信片收藏(收到/寄出),并提供地图、日历统计、交换记录等功能。
仓库同时提供一个 Python Qt 桌面工具,用于浏览数据与导入新明信片。
- 网站(Jekyll)
- 页面层:
index.html、received.html、sent.html、exchange.html、geo-*.html、calendar.html - 数据层:
_data\received.csv、_data\sent.csv、_data\grouped.csv、_data\*.yml - 模板样式层:
_layouts\、_includes\、_sass\、css\、js\
- 页面层:
- 桌面工具(Qt)
- 主程序:
scripts\postcards_qt.py - 依赖文件:
scripts\requirements.txt - 导入相关脚本:
scripts\sort.py、scripts\grouped.py、scripts\date_format.py等
- 主程序:
安装依赖:
bundle install本地开发预览:
bundle exec jekyll serve生产构建:
bundle exec jekyll build说明:站点配置了 baseurl: "/postcards",适配 GitHub Pages 部署。
安装依赖:
python -m pip install -r scripts\requirements.txt启动工具:
python scripts\postcards_qt.py指定界面语言(可选,zh/en):
python scripts\postcards_qt.py --lang zh也可以在菜单栏中切换:Language -> 中文 / English(切换后会自动重启应用)。
指定项目根目录(可选):
python scripts\postcards_qt.py --root C:\codes\postcards- 统一窗口浏览
Received/Sent数据 - 关键词搜索与多维筛选(平台、国家、类型、地区、日期范围)
- 查看卡片详情与图片预览,打开卡片/用户 URL
Tools -> Import new postcards...导入工具:Post-Hi:选择 received/sent/expired-sent 三个 CSV 导入Postcrossing:粘贴 ID 批量导入iCardYou:支持列表格式或逐行type,path,id格式Images:候选卡片、源图选择、预览、已有图片对比、图片分配与执行导入
- 导入后可运行
Run sort.py + grouped.py更新排序和日历聚合数据
This repository contains a Jekyll-based static website for a personal postcard collection (received/sent), plus a Python Qt desktop tool for data browsing and import workflows.
- Website (Jekyll)
- Page layer:
index.html,received.html,sent.html,exchange.html,geo-*.html,calendar.html - Data layer:
_data\received.csv,_data\sent.csv,_data\grouped.csv,_data\*.yml - Template/style layer:
_layouts\,_includes\,_sass\,css\,js\
- Page layer:
- Desktop tool (Qt)
- Main app:
scripts\postcards_qt.py - Dependencies:
scripts\requirements.txt - Import helpers:
scripts\sort.py,scripts\grouped.py,scripts\date_format.py, etc.
- Main app:
Install dependencies:
bundle installRun local development server:
bundle exec jekyll serveBuild production site:
bundle exec jekyll buildNote: the site uses baseurl: "/postcards" for GitHub Pages deployment.
Install dependencies:
python -m pip install -r scripts\requirements.txtRun:
python scripts\postcards_qt.pyOptional UI language (zh/en):
python scripts\postcards_qt.py --lang zhYou can also switch from the menu: Language -> 中文 / English (the app restarts automatically after switching).
Optional custom project root:
python scripts\postcards_qt.py --root C:\codes\postcards- Unified viewer with
Received/Sentswitching - Keyword search and linked filters (platform, country, type, region, date range)
- Detail panel with postcard image preview and URL open actions
Tools -> Import new postcards...:Post-Hi: import 3 CSV files (received/sent/expired-sent)Postcrossing: import by pasted card IDsiCardYou: import from list format or line-basedtype,path,idImages: candidate cards, source image selection, side-by-side preview, assignment, and execute import
- Post-processing via
Run sort.py + grouped.py