Skip to content

Releases: Aisland-SJL/StarMap

StarMap v0.3.2

Choose a tag to compare

@Aisland-SJL Aisland-SJL released this 02 Sep 12:55

StarMap v0.3.2

StarMap v0.3.2 makes country management safer and keeps the country timeline in the correct newest-to-oldest order. This is a backward-compatible patch release with no private data or required migration.

New features

  • Restore or permanently delete hidden countries: Country editing now provides the same two-step cleanup pattern used by local media. Hidden countries can be restored from the left action or permanently removed from the right action.
  • Media-aware deletion guard: A country may be permanently deleted only when none of its cities contains photos, panoramas, or aerial images. Hidden media still counts. If deletion is blocked, StarMap lists each affected city and its media count so users know exactly what to clean up first.

Improvements

  • Newest visits stay on top: After a country is added, StarMap compares the latest known visit date for every country and places the new entry in the newest-to-oldest timeline.
  • Stable ordering when dates match: Countries with the same date, or without a comparable date, keep their existing relative order. Manual drag-and-drop ordering remains available afterward.
  • No automatic media cascade: Permanently deleting a country never deletes photos or source originals automatically. Users must explicitly remove city media before the country can be deleted.

Bug fixes

  • Fixed newly added countries always appearing at the top even when their visit date belonged farther down the timeline.
  • Fixed hidden countries having only a restore action and no guarded permanent-delete path.

Breaking changes

  • None. Existing external private profiles, travel records, media catalogs, MediaInbox originals, and local credentials remain compatible and must stay outside Git.

StarMap v0.3.2 让国家管理更加安全,并确保国家时间线始终按“上新下旧”排列。本次为向后兼容的补丁版本,不包含私人数据,也不需要迁移。

新功能

  • 恢复或彻底删除隐藏国家:国家编辑现在采用与本地媒体一致的双操作。左侧可以恢复隐藏国家,右侧可以永久删除。
  • 媒体安全拦截:只有当一个国家下的所有城市都不存在普通照片、360° 全景或航拍影像时,才允许永久删除。已隐藏但尚未彻底删除的媒体同样会触发拦截;系统会列出仍有媒体的城市和数量,方便用户逐城处理。

体验改进

  • 最近到访国家自动置顶:新增国家后,StarMap 会比较所有国家最近一次到访日期,并按新到旧重新定位。
  • 相同日期保持稳定:日期相同或缺少可比较日期时,维持原有相对顺序;完成自动定位后,用户仍可继续手动拖动排序。
  • 不会自动级联删除媒体:永久删除国家时不会顺带删除照片或投递箱原图。用户必须先在相应城市中明确完成媒体删除。

问题修复

  • 修复新增国家无论日期新旧都固定出现在最上方的问题。
  • 修复隐藏国家只有恢复操作、没有安全永久删除入口的问题。

破坏性变更

  • 无。现有外置私人资料层、旅行记录、媒体目录、MediaInbox 原图及本地凭据继续兼容,并且必须保留在 Git 之外。

StarMap v0.3.1

Choose a tag to compare

@Aisland-SJL Aisland-SJL released this 31 Aug 14:58

StarMap v0.3.1

StarMap v0.3.1 makes local media cleanup consistent, keeps the current travel context across editor refreshes, and improves the in-app Release center. This is a backward-compatible patch release with no private data or required migration.

Improvements

  • Refresh continuity: Local editor refreshes now return to the selected country, city, page, zoom level, sidebar state, Journey view, and active drone-media context instead of resetting to the initial globe.
  • Clearer Release center: Update Guide and Version Notes now share the first row, while the longer Update Announcement uses a full-width row below them.
  • Rendered release notes: GitHub Release Markdown now renders headings, emphasis, lists, links, quotes, code, and GFM tables instead of exposing formatting characters.
  • No map startup penalty: The Markdown renderer loads only when the Release page opens, keeping it out of the initial map bundle.

Bug fixes

  • Added Restore and Permanent Delete controls to City Photos, matching the drone-media editor.
  • Fixed newly hidden City Photos requiring a second visit before permanent deletion could run.
  • Fixed newly hidden drone media requiring an extra click on the editor checkmark before permanent deletion.
  • Unified City Photos and drone-media deletion into one guarded local endpoint that validates hidden state, city ownership, source originals, and generated output paths before deleting.

Breaking changes

  • None. Existing external private profiles, ignored travel data, MediaInbox originals, generated media, and local credentials remain compatible and must stay outside Git.

StarMap v0.3.1 统一了本地媒体清理流程,让编辑器刷新后继续停留在原来的旅行位置,并完善应用内版本更新中心。本次为向后兼容的补丁版本,不包含私人数据,也不需要迁移。

体验改进

  • 刷新后保持上下文:本地编辑触发刷新后,会恢复此前选中的国家、城市、页面、缩放级别、侧栏状态、Journey 视图和无人机媒体上下文,不再回到初始地球。
  • 更新中心布局更清晰:“更新指南”和“版本说明”位于第一行;篇幅较长的“更新公告”在下方独占一整行。
  • 更新公告支持 Markdown:GitHub Release 中的标题、加粗、列表、链接、引用、代码和 GFM 表格会正常渲染,不再显示格式符号。
  • 不拖慢地图首屏:Markdown 解析器仅在打开版本更新页时加载,不进入地图初始包。

问题修复

  • City Photos 增加与无人机影像一致的“恢复隐藏”和“彻底删除”操作。
  • 修复 City Photos 刚隐藏后必须再次进入,才能永久删除的问题。
  • 修复无人机影像永久删除前还要额外点击编辑器对号的问题。
  • City Photos 与无人机影像统一使用受控删除接口;删除前会检查隐藏状态、所属城市、投递箱原图和生成目录,避免误删或越界。

破坏性变更

  • 无。现有外置私人资料层、被忽略的旅行数据、MediaInbox 原图、生成媒体及本地凭据继续兼容,并且必须保留在 Git 之外。

StarMap v0.3.0

Choose a tag to compare

@Aisland-SJL Aisland-SJL released this 31 Aug 10:21

StarMap v0.3.0

StarMap v0.3.0 separates personal travel content from the public source tree, strengthens multilingual city search, and makes local drone-media updates more reliable. Existing private files remain outside Git and must be preserved when updating.

New features

  • Public and personal modes: The same codebase now supports a neutral public template and an external personal profile without copying private content into the repository.
  • External private profile: Personal configuration, travel records, MediaInbox originals, generated media, and editor state can live outside the Git working tree.
  • Resilient city search: Cesium ion geocoding is preferred when configured, with a country-aware OpenStreetMap fallback and manual coordinates when online lookup is unavailable.
  • Release privacy gate: Public releases can be checked from tracked files only, with explicit privacy and ignore-rule validation.

Improvements

  • International place names: City matching now handles Unicode composition, Latin diacritics, and equivalent localized names more consistently, including names such as São Miguel.
  • Safer permanent deletion: Hidden media deletion resolves generated assets from the external private profile and validates all targets before removing anything.
  • More stable local editing: Multi-file import and deletion operations are coalesced into one browser refresh instead of triggering several competing reloads.
  • Fresh media after import: Private media modules are invalidated before the intentional refresh, so newly imported thumbnails and catalog entries appear immediately.
  • Documented collaboration ports: Codex preview uses port 5173 and the DSH mirror uses port 5174 to avoid collisions.

Bug fixes

  • Fixed localized city searches that failed on traditional/simplified variants or accented characters.
  • Fixed Cesium geocoding results being ignored when the service returned a bounding box instead of a point.
  • Fixed permanent deletion requiring repeated attempts or refreshing the page several times.
  • Fixed successful drone imports remaining invisible because the browser reused a stale private media module.
  • Fixed local editor file changes causing redundant full-page refreshes during a single transaction.

Privacy and migration

  • Private photos, coordinates, travel JSON, .env* credentials, generated *.local.json, and public/media/user/** remain excluded from Git.
  • No private data is included in this Release.
  • Existing users should keep their ignored local data and credentials when updating. See the repository privacy and media-import documentation before moving personal files.

StarMap v0.3.0 将个人旅行内容从公开源码中彻底分离,同时强化多语言城市搜索,并提升本地无人机媒体导入与删除的稳定性。升级时请继续保留 Git 之外的私人文件。

新功能

  • 公共版与个人版双模式:同一套代码现在既能运行中立的公开模板,也能加载仓库外部的个人资料,不需要把私人内容复制进公开仓库。
  • 外置私人资料层:个人配置、旅行记录、MediaInbox 原图、生成媒体和编辑状态均可存放在 Git 工作区之外。
  • 更可靠的城市搜索:配置后优先使用 Cesium ion 地理编码,并提供限定国家的 OpenStreetMap 回退;联网不可用时仍可手动填写坐标。
  • 发布隐私门禁:公开发布只检查 Git 跟踪文件,同时验证隐私边界和关键 .gitignore 规则。

体验改进

  • 国际地名兼容:城市匹配更好地兼容 Unicode 组合形式、拉丁重音字符及本地化同名,例如 São Miguel。
  • 更安全的彻底删除:隐藏影像会从外置私人资料层定位生成资源,并在删除前统一验证全部目标。
  • 更稳定的本地编辑:一次导入或删除涉及的多次文件写入会合并成一次浏览器刷新,不再发生多次竞争刷新。
  • 导入后立即显示新媒体:主动刷新前会先使私人媒体缓存失效,新缩略图和目录项可以立即出现。
  • 固定协作端口:Codex 预览固定使用 5173,DSH 镜像固定使用 5174,避免双方抢占端口。

问题修复

  • 修复繁简体变体、重音字符等本地化城市名称搜索失败的问题。
  • 修复 Cesium 返回城市范围框而非单点时结果被忽略的问题。
  • 修复彻底删除需要重复操作、并引发多次页面刷新的问题。
  • 修复无人机影像已成功导入但因私人媒体模块缓存而暂时不可见的问题。
  • 修复单次本地编辑事务期间文件变化触发多次整页刷新的问题。

隐私与迁移

  • 私人照片、坐标、旅行 JSON、.env* 凭据、生成的 *.local.json 和 public/media/user/** 继续排除在 Git 之外。
  • 本次 Release 不包含任何私人数据。
  • 已有用户升级时应保留本地被忽略的数据与凭据;移动私人文件前请先阅读仓库中的隐私边界和媒体导入说明。

StarMap v0.2.0

Choose a tag to compare

@Aisland-SJL Aisland-SJL released this 27 Aug 10:59

StarMap v0.2.0

StarMap v0.2.0 makes local travel-media editing more reliable and turns drone photographs into first-class map content. The release keeps existing ignored private data, media, and environment files compatible; no migration is required.

New features

  • Aerial-photo viewer: Ordinary drone photographs now open in a contain-fit high-resolution viewer, while 360° panoramas keep the immersive spherical viewer.
  • Clear media types: Panorama thumbnails carry a compact 360° badge so they are easy to distinguish from aerial photographs.
  • Import reconciliation: Newly uploaded city and drone media are mapped back to their final catalog IDs, restored if an older copy was hidden, and inserted into the correct city order.

Improvements

  • Safer local media delivery: Newly generated thumbnails and previews are streamed through the loopback-only local editor, avoiding stale or missing images after import without exposing write APIs in production builds.
  • Better import hierarchy: The media type, file picker, selection status, and primary import action now have clearer visual priority and alignment.
  • More resilient loading: The panorama viewer briefly retries newly generated files instead of immediately falling into a missing-file state.
  • Project identity and updates: The public template consistently uses the StarMap name, and the version button can be clicked again to return to the previous Map or Journey view.

Bug fixes

  • Fixed imports that completed successfully but disappeared after a page refresh because the same media ID was still hidden.
  • Fixed newly generated thumbnails returning the development app shell instead of the image file.
  • Fixed aerial photographs having no usable large preview.
  • Fixed the local preview becoming unreachable while Windows was still writing generated media.
  • Fixed inconsistent alignment among thumbnail numbers, drag handles, and hide controls.

Breaking changes

  • None. Existing .env.local, ignored private travel overlays, editor state, MediaInbox originals, and generated personal media remain outside Git and should be preserved during updates.

StarMap v0.2.0 让本地旅行媒体编辑更加可靠,并让普通无人机航拍照片也成为可以直接浏览的地图内容。本次更新兼容现有的私有数据、媒体与环境配置,不需要迁移。

新功能

  • 航拍照片大图预览:普通航拍照片会以完整适配的高分辨率预览打开;360° 全景图继续使用沉浸式球形 Viewer。
  • 媒体类型标记:360° 全景缩略图增加专属标记,可快速与普通航拍照片区分。
  • 导入结果自动衔接:新上传的城市照片和无人机影像会映射到最终目录 ID;若旧副本曾被隐藏,会自动恢复并加入正确的城市排序。

体验改进

  • 更稳定的本地媒体读取:新生成的缩略图和预览图由仅限本机的编辑服务直接读取,导入后无需等待开发服务器重新发现文件;公开构建仍不包含写入接口。
  • 更清晰的导入层级:媒体类型、选择文件、选取状态与“确认导入”重新统一字号、层级和对齐关系。
  • 更可靠的全景加载:刚生成的全景资源会进行短暂重试,不再立即显示文件缺失。
  • 统一项目名称与更新入口:公开模板统一使用 StarMap 名称;再次点击版本按钮可以返回此前的 Map 或 Journey 页面。

问题修复

  • 修复导入成功但因相同媒体 ID 仍处于隐藏状态而在刷新后消失的问题。
  • 修复新缩略图请求被错误返回开发页面、导致缩略图空白的问题。
  • 修复普通航拍照片无法打开大图预览的问题。
  • 修复 Windows 正在写入媒体时本地预览服务意外中断的问题。
  • 修复缩略图编号、拖动按钮和隐藏按钮未对齐的问题。

破坏性变更

  • 无。更新时请继续保留 .env.local、被忽略的私人旅行数据、编辑状态、MediaInbox 原图及生成的个人媒体。

StarMap v0.1.0

Choose a tag to compare

@Aisland-SJL Aisland-SJL released this 26 Aug 10:21

English

Travel Atlas v0.1.0 is the first public release of the local-first 3D travel atlas.

Highlights

  • Interactive Cesium globe with Map and Journey views.
  • Local editor for countries, cities, photos, and drone media.
  • EXIF-first drone import: date, GPS, absolute altitude, relative altitude, and camera metadata are read immediately; only missing fields are editable.
  • Date is required when missing; coordinates and altitude are optional.
  • Portrait and landscape photos fit completely in the large Viewer.
  • Bilingual setup documentation and a safe Cesium ion token workflow.
  • Private travel data, user media, editor state, and environment files stay outside Git.

Start with README.md or README.zh.md. Create your own Cesium ion token at https://ion.cesium.com/tokens; never paste a real token into AI chat or commit it to Git.

中文

Travel Atlas v0.1.0 是这个本地优先 3D 旅行地图的首个公开版本。

主要内容

  • 基于 Cesium 的交互式地球,以及 Map / Journey 双视图。
  • 可编辑国家、城市、照片和无人机媒体的本地编辑器。
  • 无人机文件选择后立即读取日期、GPS、绝对海拔、相对高度和相机信息;只有缺失字段才允许补充。
  • 日期缺失时必填,坐标和高度均可留空。
  • 横图和竖图都能在大图 Viewer 中完整显示。
  • 中英文使用说明与安全的 Cesium ion token 配置流程。
  • 私人旅行数据、个人媒体、编辑状态与环境文件不会进入 Git。

请先阅读 README.md 或 README.zh.md。Cesium ion token 请在 https://ion.cesium.com/tokens 创建;不要把真实 token 粘贴到 AI 对话或提交到 Git。