Upgrade Guide
ReeWeb projects start from the public ReeWeb repository. When its starter changes include work you want, use Reesync to compare them with your site and selectively copy the files you choose. Review the proposed changes and adapt your site wherever necessary.
Before you start
Commit or otherwise back up your site first. Reesync copies only files you explicitly select, but it overwrites those files in your project.
Install Reesync once if it is not already on your PATH:
curl -fsSL https://raw.githubusercontent.com/reepolee/reesync/main/install.sh | bash
irm https://raw.githubusercontent.com/reepolee/reesync/main/install.ps1 | iex
Verify the install:
reesync --version
Manual-install options are in the Reesync installation guide.
Compare the current starter
Clone the current public ReeWeb starter outside your project, then run Reesync from the root of the site you are updating:
git clone --depth 1 https://github.com/reepolee/reeweb.git /tmp/reeweb-new
cd ~/code/my-site
reesync /tmp/reeweb-new
git clone --depth 1 https://github.com/reepolee/reeweb.git "$env:TEMP\reeweb-new"
Set-Location "$HOME\code\my-site"
reesync "$env:TEMP\reeweb-new"
Reesync reads the public starter directory and writes only to the current project.
Choose the changes to adopt
Reesync shows only files that differ:
- New and modified starter files are pre-selected.
- Use arrow keys to browse and
Spaceto select or clear a file or folder. - Press
ito add a project-owned file to.reesyncignore; it remains visible but is pre-cleared on later runs. - Press
Enteronly after reviewing the selection. Reesync copies the files you selected and shows progress.
Files found only in your project are shown as deleted in the comparison, but
Reesync never deletes them. Hidden files, including .env, .gitignore, and
.reesyncignore, are not compared or copied.
The Reesync command-line reference covers the full workflow, key bindings, and ignore-pattern syntax.
Keep site work under your control
The starter's .reesyncignore marks common project-owned paths such as
package.json, wrangler.jsonc, and src/css/**. Extend it for the files that
define your site. Before selecting changes, review your custom content,
components, configuration, and hooks:
src/public/contains pages, content, translations, and assets.src/components/andsrc/css/contain your site components and theme.src/lib/andconfig/contain project hooks and site configuration.
Reesync copies selected files. It does not merge source code or infer which parts of a changed file belong to your site.
Verify after syncing
Review the resulting diff, then run the standard site checks:
bun install
bun test
bun ssg
Preview the generated dist/ output and test the pages, content, redirects,
and locales affected by the selected files. The Release Notes
summarise what each release includes.