Punchlist
sync setup
Back to the site

Set up sync from scratch

By default your board lives in one browser. Turn on sync and your phone, laptop, and any other device share the same board through one private folder on GitHub. It is free, it stays private, and it doubles as a backup. Here is the whole thing from zero, no GitHub account needed to start.

You do this once, about ten minutes. Your board goes into a repo only you can see, and the access key you create is stored only in your browser. It is never included in any board you export.
1

Make a free GitHub account

GitHub is the service that will hold your board. An account is free. If you already have one, skip to step 2.

Create a GitHub account

Pick a username, email, and password, then confirm your email. That is all this step needs.

2

Make a private repository

A repository is just a private storage space. Yours will hold one small file, your board. Nobody but you can see a private repo.

Create a new repository

On that page:

github.com › new repository
Repository name
punchlist-board
Public
Private  pick this one
Add a README file
Create repository

Note the name at the top of the new repo. It reads your-username/punchlist-board. You will paste that into the app.

3

Make an access token

The app needs permission to read and write that one repo. A fine-grained token gives it exactly that, and nothing else.

Create a fine-grained token
github.com › settings › new fine-grained token
Token name
punchlist
Repository access
Only select repositories → punchlist-board
Repository permissions › Contents
Read and write
Generate token
Prefer the fine-grained token above. If you would rather, a classic token also works: create a classic token and tick the single repo checkbox. It is simpler but grants broader access.
4

Paste it into Punchlist

Open Punchlist, open the sidebar, and expand the Sync section in Settings.

Punchlist › Settings › Sync
GitHub sync  on
Repository
your-username/punchlist-board
Token
github_pat_••••••••••••
Sync now
Synced just now

Within a few seconds it shows Synced with the time. Your board is now saved to your repo.

5

Add your other devices

On each other device, open Punchlist, go to Settings › Sync, turn it on, and enter the same repository. For the token you can reuse the same one, or make another the same way as step 3.

From now on every change on any device lands in the repo as a saved version and shows up on the others. Open the app, and it pulls the latest before you start.

Managing the devices on your board

Settings → Sync lists every device that has saved to this board, newest first, with the name you gave it. That list is how you tell them apart when two devices disagree, which is why naming a device is required before it can sync.

Removing one from the list

Hover a device in that list and press the × beside it. It disappears from the list on every device on your next sync, and Ctrl+Z brings it back if you missed.

This is not the same as revoking access. The list is a record of who has shown up, not a permission list. A device that still has your token rejoins the list the moment it syncs again, and it can still read and write your board in the meantime.

Actually cutting a device off

Access comes from the token, so that is what you take away. There is no way to revoke one device without revoking them all, because they share the token.

  1. Open your fine-grained tokens and delete the one your board uses.
  2. Make a new one the same way you did the first time: this repository only, Contents read and write.
  3. Paste the new token into Settings → Sync on each device you still want syncing.

The device you cut off keeps the copy of the board it already had, sitting in its own browser. Nothing reaches across and deletes it. If that matters, open the app on that device and use Settings to clear it, or delete the file.

A device you no longer have

A lost or wiped device cannot sync, so it stops appearing as recently seen and does no harm. Remove it from the list to keep things tidy, and rotate the token if the device is somewhere you would rather it was not.

Good to know