Wenlan
Wenlan is a source-backed AI knowledge base and LLM wiki for AI work: organize documents and decisions into pages you can find, inspect, and review.
Replica: Versioned backups for Windows that run by themselves, and tell you when they didn’t. Replica backs up your folders to an external drive or a NAS share on a schedule. Each backup is a snapshot
ProductivityRust · FluentGitHub @SuremiseOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Windows backup tool: encrypted, versioned backups (restic) and exact mirrors to drives and NAS shares, from a tray app, a window or the command line. No account, no cloud, no telemetry.
Loading the full README.
Read the full README ↗Versioned backups for Windows that run by themselves, and tell you when they didn't.
Replica backs up your folders to an external drive or a NAS share on a schedule. Each backup is a snapshot you can go back to, so a file you deleted, overwrote or lost to ransomware last Tuesday is still there. It runs from the tray, from Windows Task Scheduler if you like, or from the command line, and every run ends with a clear result: done, partly done, skipped (the drive wasn't plugged in) or failed, and why.
Replica is free and open source (MIT), for Windows 10 and 11. It drives restic for its snapshots and bundles a pinned copy, so there's nothing else to install.
Status: version 0.4.0: download it from Releases (Installing, below). It isn't code-signed yet, so check the download against its
SHA256SUMS.txt(SmartScreen and checksums).
The user guide covers setting up jobs, keeping the repository password safe, restoring, a test restore routine, recovering without Replica and troubleshooting.
A mirror (an exact copy of a folder) copies your mistakes too: delete a file, and the next run deletes the copy. Encrypt it with ransomware, and the copy is encrypted too. A mirror is only as good as the moment before something went wrong, and you rarely notice in time.
So Replica's jobs are versioned by default. Each run adds a snapshot to a restic repository on the target: encrypted, deduplicated (unchanged files take no extra space) and kept as long as the job's retention says, such as 7 daily, 4 weekly and 6 monthly. You can restore any file or folder from any snapshot that's kept.
A mirror job is still there for when you want a plain copy you can open in Explorer, such as
photos on a second drive. It must be asked for, by setting mirror_deletes_confirmed = true, and
it stops without deleting anything if a run would delete more than a set share of the target's
files (30% by default), as when a source was emptied by mistake.
Install Replica (see Installing), or build it from source (see Building from source).
Set up a job in the window (open it from the tray icon, then New job, or File > New
job…), or in settings.toml,
in %APPDATA%\Replica\ (or beside the exe for a portable copy). docs/settings.example.toml documents every key; the
job model below shows the short version.
Set up its target. The window does this when you save the job. For a job set up in the file:
replica init documents
For a versioned job, this makes the repository and its password. The password is shown once:
save a copy (see below), then type saved (in the window,
click I've saved a copy).
Run it:
replica run documents
Restore from it:
replica snapshots documents
replica restore documents latest "C:\Users\me\Documents\report.docx" --to C:\Restored
A restore always goes to a new or empty folder, never over your files, unless you ask for that
with --overwrite.
Every command and option is in docs/cli.md.
A job is what to back up (its sources), where to (one or more targets) and how (versioned or mirror), with an optional schedule. Two examples:
[[jobs]]
name = "documents"
mode = "versioned" # the default
schedule = "daily 21:00"
[jobs.retention]
daily = 7
weekly = 4
monthly = 6
[[jobs.sources]]
path = 'C:\Users\me\Documents'
exclude = ["*.tmp", "node_modules"]
# A drive is found by its volume ID or label, whatever letter Windows gives it today.
[[jobs.targets]]
kind = "drive"
name = "Backup drive"
label = "BACKUP"
path = 'Replica\documents'
# A NAS share; its login is in Windows Credential Manager, never in this file.
[[jobs.targets]]
kind = "unc"
name = "NAS"
path = '\\nas\backup\replica\documents'
credential = "replica-nas"
[[jobs]]
name = "photos-copy"
mode = "mirror"
mirror_deletes_confirmed = true
schedule = "weekly sun 10:00"
[[jobs.sources]]
path = 'D:\Photos'
[[jobs.targets]]
kind = "drive"
label = "PHOTOS"
path = 'Photos'
A job can also have before steps, such as a consistent snapshot of a live SQLite database
(Replica copies it safely and backs up the copy, never the file mid-write) or a command, and
after steps, such as a command or a regular restic check of the repository. A target that
isn't there (the drive is unplugged, the NAS is off) is skipped, not failed, and the next run
catches up.
A job's schedule is daily 02:30, weekly mon,thu 21:00, every 6h or every 90m; without
one, it runs only when you ask. In the window, the Schedules page sets each job's schedule,
with the same choices as the job editor, says when it next runs, and lists Replica's tasks in
Task Scheduler; Settings > Scheduling chooses what runs the schedules.
This is the beginning of the README. Read the rest at the original. Read the full README ↗