config.json
SidebarFavorites keeps your favorites and settings in one JSON file. This page shows where the file is, what every field means, and how to back it up or recover it. Read it if you want to inspect, back up or hand-edit your setup. You never need the file for everyday use.
On this page
Where the file is
Everything the app stores is in one folder in your Library. The app creates the folder the first time it runs.
Folder
~/Library/Application Support/SidebarFavorites/To open it, choose Finder then Go then Go to Folder…, paste the path and press Return. The folder holds these items:
| Item | What it holds | Safe to delete? |
|---|---|---|
config.json | Your favorites and settings. This page describes it. | No. Deleting it removes every favorite from the app. |
Icons/ | The SVG files you imported, stored exactly as you supplied them. | No. Custom icons are rebuilt from these files. |
IconBackups/ | Copies of folder icons the app removed when you chose Remove its icon. | Yes, once you are sure you do not want an icon back. |
SidebarFavoritesIcons. | The helper bundle that carries the icons. The app rebuilds it when it is missing. | Leave it. See How it works. |
AdvancedApps/ | One small helper for each favorite in Both icons mode. | Leave it. The app adds and removes helpers itself. |
config. | A copy of an older configuration, made once before the app converted it. It is present only if such a conversion happened. | Yes. |
config. | A configuration the app could not read and moved aside. See If the file cannot be read. | Yes, after you have recovered what you need. |
The shape of the file
config.json is one JSON object. It has a list of favorites, a small settings object, and three values the app uses for its own bookkeeping. The app writes the keys in alphabetical order and saves the whole file in one step, so a crash cannot leave a half-written file.
This is the smallest valid file. It is what the app writes before you add a favorite:
config.json, empty
{ "favorites" : [], "settings" : { "launchAtLogin" : false, "showInMenuBar" : true, "signingIdentity" : "automatic" }, "version" : 3}This is a realistic file with two favorites. The first is a folder with an SF Symbol. The second uses an imported SVG, shown at 90 percent, in Both icons mode:
config.json, two favorites
{ "favorites" : [ { "createdAt" : "2026-09-12T09:30:00Z", "enabled" : true, "folderPath" : "~/Projects", "iconScale" : 1, "iconType" : "sfSymbol", "iconValue" : "hammer.fill", "id" : "5F0C2B1E-8A44-4E0B-9C59-2D0D5B7A6E11", "locationsOnly" : false, "mode" : "regular", "name" : "Projects", "osType" : "S000", "sidebarItemID" : 412, "sidebarProvenance" : "managed", "updatedAt" : "2026-09-12T09:30:00Z" }, { "createdAt" : "2026-09-14T16:05:00Z", "customSVGPath" : "client-logo.svg", "enabled" : true, "folderPath" : "~/Documents/Clients", "iconScale" : 0.9, "iconType" : "custom", "iconValue" : "client-logo", "id" : "A3D7E0C4-11B2-4F6A-8E3D-7C9B0F2A4D55", "locationsOnly" : false, "mode" : "advanced", "name" : "Clients", "osType" : "S001", "sidebarItemID" : 418, "sidebarProvenance" : "adopted", "updatedAt" : "2026-09-20T11:42:00Z" } ], "helperDigest" : "9b1f…c27a", "helperGeneration" : 7, "settings" : { "launchAtLogin" : false, "showInMenuBar" : true, "signingIdentity" : "automatic" }, "version" : 3}Top-level fields
These five keys sit at the top of the file.
| Field | Type | What it holds | Default |
|---|---|---|---|
version | Number | The layout of the file. The app writes 3. Do not change it. | 3 |
favorites | List | One object for each favorite. See Favorite fields. | An empty list. |
settings | Object | The app’s settings. See Settings fields. | The defaults below. |
helperDigest | Text | A SHA-256 fingerprint of the icons the helper bundle was last built from. When it has not changed, the app skips the rebuild. | Absent until the first build. |
helperGeneration | Number | A counter that goes up by one on every rebuild of the helper bundle, so macOS notices the new bundle. | 1 |
helperDigest and helperGeneration are bookkeeping. If you delete helperDigest, the app rebuilds the helper bundle the next time it syncs, which is harmless.
Settings fields
The settings object holds three values. The first two are the switches in the Settings window. The third has no control in the app and can only be changed here.
| Field | Type | What it does | Default |
|---|---|---|---|
launchAtLogin | true or false | Mirrors the Launch at Login switch. | false |
showInMenuBar | true or false | Mirrors the Show in Menu Bar switch. | true |
signingIdentity | Text | Chooses how the app signs the helpers it generates for Both icons mode. | automatic |
Values of signingIdentity
Leave this at automatic unless a helper fails to load and you know which certificate should sign it.
| Value | What it does | Choose it when |
|---|---|---|
automatic | Lets the app pick the signing method. | Always, unless you have a reason below. |
- | Signs ad hoc, with no certificate. | You have no signing certificate and want to say so explicitly. |
Apple Development | Signs with your Apple Development certificate. | You build the app yourself and test with a development certificate. |
Developer ID Application | Signs with your Developer ID Application certificate. | You build and distribute the app yourself. |
Favorite fields
Each object in favorites describes one favorite. The fields fall into three groups: what you chose, how the icon is drawn, and how the favorite is tied to its row in Finder’s sidebar.
What you chose
| Field | Type | What it holds | Default |
|---|---|---|---|
id | UUID | Identifies the favorite. Required, and unique in the file. | |
name | Text | The name shown in the app. Required. It is the folder’s own name, because Finder labels a sidebar row with the folder name. | |
folderPath | Text | The folder, as a path. Required. A leading ~ stands for your home folder. | |
enabled | true or false | Whether the favorite is active. A disabled favorite stays in the list but its icon is not applied. | true |
createdAt | Date | When the favorite was added, as an ISO 8601 date in UTC. | The time of loading. |
updatedAt | Date | When the favorite was last changed, in the same format. | The time of loading. |
How the icon is drawn
| Field | Type | What it holds | Default |
|---|---|---|---|
iconType | Text | The kind of icon: sfSymbol for an SF Symbol, or custom for an imported SVG. | sfSymbol |
iconValue | Text | The symbol’s name. For an SF Symbol it is the system name, such as hammer.fill. | folder.fill |
customSVGPath | Text | For a custom icon, the file name of the stored SVG inside Icons/. | Absent. |
iconScale | Number | The size slider for a custom icon, from 0.5 to 1.5. A value outside that range is pulled back into it. SF Symbols ignore it. | 1 |
mode | Text | How the icon reaches the row: regular, or advanced for Both icons mode. See Keeping both icons. | regular |
How it is tied to the sidebar
The app fills in these fields. They record which sidebar row belongs to the favorite, so that removing the favorite undoes exactly what adding it did.
| Field | Type | What it holds | Default |
|---|---|---|---|
osType | Text | The four-character code that links the row to its icon, such as S000. The app assigns it once and never changes it. It is case-sensitive. | Absent until assigned. |
sidebarItemID | Number | Finder’s identifier for the sidebar row. | Absent until a row is bound. |
sidebarProvenance | Text | Where the row came from. See the values below. | unbound |
locationsOnly | true or false | For a mounted disk or share: put the icon on Finder’s own Locations row and add no Favorites row. See Disks and network shares. | false |
| Value | Meaning | What removing the favorite does |
|---|---|---|
managed | The app added the row to the sidebar. | The row is removed. |
adopted | The row was already in your sidebar when you added the favorite. | The row stays and gets its original icon back. |
unbound | The favorite has no row of its own. | Nothing in the sidebar changes. |
Edit the file by hand
The app is the intended editor, and everything except signingIdentity has a control there. If you do edit the file, the app must not be running, because it reads the file at launch and writes it again whenever something changes.
Quit SidebarFavorites: choose Quit SidebarFavorites from its menu bar menu.
You seeThe icons stay in Finder's sidebar. They do not need the app to be running.
Copy
config.jsonto another folder as a backup.Open config.json in a plain-text editor, make the change and save.
Keep the file valid JSON. Do not change
id,osType,sidebarItemIDorsidebarProvenance: they tie each favorite to a real row in the sidebar.Open SidebarFavorites again.
You seeYour favorites are listed, with the change applied.
If the file cannot be read
A file that is not valid JSON, or that lacks a required field, cannot be loaded. The app never deletes it. This is what happens instead:
| What the app does | What you see |
|---|---|
It renames the file to config. in the same folder. | The file is still there, under its new name. |
| It starts with a new, empty configuration. | The manager window lists no favorites. |
| It reports the problem in Settings. | A Configuration Issue notice that begins Your configuration file could not be read and was moved aside., with a Reveal Backup button. |
To recover your favorites:
Open Settings and click Reveal Backup.
You seeFinder opens the data folder with the renamed file selected.
Quit SidebarFavorites.
Open the renamed file in a text editor and repair the JSON.
The usual causes are a missing comma or quotation mark after a manual edit, or a favorite without
id,nameorfolderPath.Delete the new
config.json, then rename the repaired file toconfig.json.Open SidebarFavorites.
You seeYour favorites are back in the list.
A file that is valid but has fields missing is not treated as unreadable. Every field except id, name and folderPath falls back to its default.