Migration Guide

Absolute Press is designed to replace vuepress-theme-hope: markdown content migrates unchanged, and URLs stay the same. This page lists the compatibility commitments and the known incompatibilities.

URL shape

Routes are extensionless clean URLs: docs/xxx.md → /xxx, and a directory index → /<dir>/ (or /<dir>, depending on urls.directoryIndex). Compared to theme-hope's /xxx.html only the suffix differs; where old addresses land is covered below.

Where old .html addresses land

The emitted files never change shape (the file behind /xxx is xxx.html), so old links never 404:

canonical, og:url, sitemap, and RSS all point at the clean addresses, so search-engine ranking converges onto them.

Upgrading from the .html route version

Content syntax compatibility list

The following syntaxes behave the same as theme-hope; content moves over directly:

Known incompatibilities

Suggested migration steps

  1. Put the original site's markdown into the new contentDir with the same directory structure — routes derive automatically
  2. Register the icons the original site used in the site config (svg strings)
  3. Run a build: dead-link checking exposes broken relative links in content (the framework errors out when a ./ ../ link fails to resolve); fix them one by one from the error list
  4. Convert <template #xxx> and vue component syntax page by page
  5. Against Theme customization, wire old custom styles onto the --c-* variables (or keep using the --vp-c-* aliases)

Capability comparison cheatsheet

theme-hope Absolute Press
.html routes + Chinese anchors clean URLs; old .html addresses never 404, anchors character-for-character compatible
markdown content syntax character-for-character compatible (see the list above)
<template #xxx> / vue components passed through; convert page by page
full frontmatter keys only date/category/tag/icon/feed/overview
build-time password encryption client-side password gate (not real encryption)
theme slots / component overrides CSS variables + mount-point DOM

After migrating, the Markdown extensions page doubles as a regression self-check list for content.