Getting Started
Install dotweave and set up your first sync in a few minutes.
Prerequisites
Section titled “Prerequisites”- Node.js 24 or later
Installation
Section titled “Installation”npm install -g @tinyrack/dotweaveStarting Fresh
Section titled “Starting Fresh”If this is your first time using dotweave, follow these steps to create a new sync directory.
-
Initialize
Create a new sync directory with a fresh age key for encrypting secrets.
dotweave initThis sets up
~/.config/dotweave/with a Git repository and an age identity. -
Track your files
Tell dotweave which files to sync. For example:
dotweave track ~/.zshrcdotweave track ~/.config/starship.tomldotweave track ~/.config/nvimFor sensitive files like SSH keys, use secret mode:
dotweave track --mode secret ~/.ssh/config -
Push to the sync directory
Copy your tracked files into the sync directory:
dotweave push -
Commit and push with Git
Open the sync directory and push to a remote:
dotweave cdgit add -A && git commit -m "Initial sync"git remote add origin <your-repo-url>git push -u origin main
Connecting an Existing Sync Directory
Section titled “Connecting an Existing Sync Directory”On a new machine, clone your existing sync directory:
-
Clone and initialize
dotweave init <your-repo-url> --key "AGE-SECRET-KEY-1..."This clones the repository into
~/.config/dotweave/repository/. When connecting an existing sync repository, you must provide the same age private key used to decrypt its secret files:dotweave init <your-repo-url> --promptKey -
Pull your files
Restore all tracked files to their local paths:
dotweave pull
What’s Next?
Section titled “What’s Next?”Now that you’re set up, explore the guides:
- Directory Structure — understand where dotweave stores files
- Tracking Files — learn more about tracking options
- Sync Modes — normal, secret, and ignore modes
- Syncing Secrets — encrypt sensitive files with age