Skip to content

Commit ae974d6

Browse files
authored
Merge pull request #60 from anshukaushik4700/docs/macos-browser-profiles
Add macOS browser profile paths documentation and update README
2 parents bf51d2d + d64f666 commit ae974d6

File tree

2 files changed

+183
-13
lines changed

2 files changed

+183
-13
lines changed

docs/README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ Welcome to the Open With Browser documentation. This collection of guides helps
66

77
### Platform-Specific Guides
88
- **[Windows Browser Profiles](./windows-browser-profiles.md)** - Complete guide to browser profile paths on Windows for Chrome, Edge, Brave, and Firefox
9+
- **[macOS Browser Profiles](./macos-browser-profiles.md)** - Complete guide to browser profile paths on macOS for Chrome, Edge, Brave, and Firefox
910
- **[Linux Browser Profiles](./linux-browser-profiles.md)** - Comprehensive guide to browser profile paths across Linux distributions, including Flatpak and Snap installations
1011

1112
### Planned Documentation
12-
- **macOS Browser Profiles** - Browser profile paths for macOS systems
1313
- **Browser Discovery Implementation** - Technical guide for implementing browser detection
1414
- **Profile Launching Guide** - How to launch browsers with specific profiles
1515
- **Cross-platform Browser Paths** - Unified approach to browser discovery across platforms
@@ -33,7 +33,7 @@ Welcome to the Open With Browser documentation. This collection of guides helps
3333
![Screenshot of the Dashboard page](assets/dashboard.png)
3434
The main landing page gives users a quick overview of the application's real-time status and recent activity. It shows the status of any Incoming Link request and tracks Recent hand-offs made by the application.
3535

36-
### 2. The Open With Dialog
36+
### 2. The Open With Dialog 
3737
![Screenshot of the open with page](assets/open-with.png)
3838
This is the compact, essential pop-up window that appears when a link is intercepted and no rule is matched. It prompts the user to make a manual, immediate routing decision.
3939
### 3. Rules Page
@@ -42,32 +42,33 @@ This is the compact, essential pop-up window that appears when a link is interce
4242
The Rules page is the central control panel for automating link and file routing in the application. It allows users to define explicit logic for the app to follow, preventing the need for manual selection.
4343

4444
The page's main function is split into two sections:
45-
- Domain Rules:
45+
- Domain Rules:   
4646
Used to automatically direct web links based on the website's domain to a specific browser profile.
47-
- File Type Rules:
47+
- File Type Rules:    
4848
Used to assign specific file extensions (like .pdf or .fig) to a designated browser.
4949
### 4. Settings
5050
![Screenshot of the settings page1](assets/settings_1.png)
5151
![Screenshot of the settings page2](assets/settings_2.png)
5252
The Settings page is the application's control center for managing how it integrates with the operating system and how it handles links by default.
5353

5454
The page's main function is divided into three key areas:
55-
- System Setup:
55+
- System Setup:       
5656
Used to establish the application as the default browser handler on the OS and displays detected browsers.
57-
- General Settings:
58-
Covers core user preferences such as the ability to Remember browser choice and an option to Start app at login.
59-
- Browser Orchestration & Diagnostics:
60-
Allows users to set a mandatory Default browser for unmatched links (the fallback) to ensure all links open automatically, and provides essential Diagnostics tools for troubleshooting.
57+
- General Settings:    
58+
 Covers core user preferences such as the ability to Remember browser choice and an option to Start app at login.
59+
- Browser Orchestration & Diagnostics:    
60+
 Allows users to set a mandatory Default browser for unmatched links (the fallback) to ensure all links open automatically, and provides essential Diagnostics tools for troubleshooting.      
6161

6262
## Quick Reference
6363

6464
### Supported Browsers
6565
| Browser | Windows | macOS | Linux | Profile Support |
6666
|---------|---------|--------|-------|-----------------|
67-
| Google Chrome | Documented | Planned | Documented | Documented |
68-
| Microsoft Edge | Documented | Planned | Documented | Documented |
69-
| Brave Browser | Documented | Planned | Documented | Documented |
70-
| Mozilla Firefox | Documented | Planned | Documented | Documented |
67+
| Google Chrome | Documented | Documented | Documented | Documented |
68+
| Microsoft Edge | Documented | Documented | Documented | Documented |
69+
| Brave Browser | Documented | Documented | Documented | Documented |
70+
| Mozilla Firefox | Documented | Documented | Documented | Documented |
71+
7172

7273
**Legend**: Documented | Planned | Not supported
7374

docs/macos-browser-profiles.md

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
# macOS Browser Profile Paths
2+
3+
This document lists the common macOS paths where major browsers store their profile data. This information is essential for the Open With Browser application to automatically discover and launch browser profiles.
4+
5+
## Table of Contents
6+
- [Chrome (Google Chrome)](#chrome-google-chrome)
7+
- [Edge (Microsoft Edge)](#edge-microsoft-edge)
8+
- [Brave Browser](#brave-browser)
9+
- [Firefox (Mozilla Firefox)](#firefox-mozilla-firefox)
10+
- [Profile Discovery Notes](#profile-discovery-notes)
11+
- [Command Line Arguments](#command-line-arguments)
12+
13+
---
14+
15+
## Chrome (Google Chrome)
16+
17+
### Default Profile Location
18+
~/Library/Application Support/Google/Chrome/Default
19+
20+
### Named Profiles
21+
~/Library/Application Support/Google/Chrome/Profile 1
22+
~/Library/Application Support/Google/Chrome/Profile 2
23+
~/Library/Application Support/Google/Chrome/Profile 3
24+
...
25+
26+
27+
### Custom Named Profiles
28+
Chrome supports custom profile directories with descriptive names:
29+
~/Library/Application Support/Google/Chrome/Profile Work
30+
~/Library/Application Support/Google/Chrome/Profile Personal
31+
32+
33+
**Note**: The names shown in Chrome’s UI (e.g., “Work Profile”, “Personal Profile”) are for display only. Folder names remain in the `Profile X` format.
34+
35+
### Profile Configuration
36+
- **Preferences file**: `~/Library/Application Support/Google/Chrome/[Profile]/Preferences`
37+
- **Local State file**: `~/Library/Application Support/Google/Chrome/Local State`
38+
39+
### Expanded Paths (Examples)
40+
/Users/[Username]/Library/Application Support/Google/Chrome/Default
41+
/Users/[Username]/Library/Application Support/Google/Chrome/Profile 1
42+
43+
44+
---
45+
46+
## Edge (Microsoft Edge)
47+
48+
### Default Profile Location
49+
~/Library/Application Support/Microsoft Edge/Default
50+
51+
52+
### Named Profiles
53+
~/Library/Application Support/Microsoft Edge/Profile 1
54+
~/Library/Application Support/Microsoft Edge/Profile 2
55+
...
56+
57+
58+
### Work/School Profiles
59+
~/Library/Application Support/Microsoft Edge/Profile [ProfileName]
60+
61+
62+
**Note**: Edge on macOS uses the same Chromium-based structure as Chrome.
63+
64+
### Profile Configuration
65+
- **Preferences file**: `~/Library/Application Support/Microsoft Edge/[Profile]/Preferences`
66+
- **Local State file**: `~/Library/Application Support/Microsoft Edge/Local State`
67+
68+
### Expanded Paths (Examples)
69+
/Users/[Username]/Library/Application Support/Microsoft Edge/Default
70+
/Users/[Username]/Library/Application Support/Microsoft Edge/Profile 1
71+
72+
73+
---
74+
75+
## Brave Browser
76+
77+
### Default Profile Location
78+
~/Library/Application Support/BraveSoftware/Brave-Browser/Default
79+
80+
81+
### Named Profiles
82+
~/Library/Application Support/BraveSoftware/Brave-Browser/Profile 1
83+
~/Library/Application Support/BraveSoftware/Brave-Browser/Profile 2
84+
...
85+
86+
87+
### Profile Configuration
88+
- **Preferences file**: `~/Library/Application Support/BraveSoftware/Brave-Browser/[Profile]/Preferences`
89+
- **Local State file**: `~/Library/Application Support/BraveSoftware/Brave-Browser/Local State`
90+
91+
### Expanded Paths (Examples)
92+
/Users/[Username]/Library/Application Support/BraveSoftware/Brave-Browser/Default
93+
/Users/[Username]/Library/Application Support/BraveSoftware/Brave-Browser/Profile 1
94+
95+
96+
---
97+
98+
## Firefox (Mozilla Firefox)
99+
100+
### Profile Root Directory
101+
~/Library/Application Support/Firefox/Profiles
102+
103+
104+
### Profile Naming Convention
105+
Firefox uses a unique identifier format:
106+
107+
~/Library/Application Support/Firefox/Profiles/[8-character-hash].default-release
108+
~/Library/Application Support/Firefox/Profiles/[8-character-hash].default
109+
~/Library/Application Support/Firefox/Profiles/[8-character-hash].[custom-name]
110+
111+
112+
### Profile Configuration
113+
- **profiles.ini file**: `~/Library/Application Support/Firefox/profiles.ini`
114+
- **installs.ini file**: `~/Library/Application Support/Firefox/installs.ini`
115+
116+
### Profile Directory Examples
117+
/Users/[Username]/Library/Application Support/Firefox/Profiles/abc12345.default-release
118+
/Users/[Username]/Library/Application Support/Firefox/Profiles/def67890.work
119+
120+
### Firefox Profile Discovery
121+
To discover Firefox profiles programmatically, read the `profiles.ini` file:
122+
123+
```ini
124+
[Profile0]
125+
Name=default-release
126+
IsRelative=1
127+
Path=Profiles/abc12345.default-release
128+
Default=1
129+
130+
[Profile1]
131+
Name=work
132+
IsRelative=1
133+
Path=Profiles/def67890.work
134+
```
135+
136+
## Profile Discovery Notes
137+
138+
For Chromium-based browsers (Chrome, Edge, Brave):
139+
- Profiles are stored under `~/Library/Application Support/<Browser>/`.
140+
- Each profile has its own `Preferences` file.
141+
- The `Local State` file lists available profiles under `profile.info_cache`.
142+
143+
For Firefox:
144+
- Profiles are stored under `~/Library/Application Support/Firefox/Profiles`.
145+
- Profile names and paths can be discovered by parsing the `profiles.ini` file.
146+
147+
---
148+
149+
## Command Line Arguments
150+
151+
You can launch browsers with a specific profile on macOS using:
152+
153+
```bash
154+
# Chrome
155+
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --profile-directory="Profile 1"
156+
157+
# Edge
158+
"/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge" --profile-directory="Default"
159+
160+
# Brave
161+
"/Applications/Brave Browser.app/Contents/MacOS/Brave Browser" --profile-directory="Profile 2"
162+
163+
# Firefox
164+
/Applications/Firefox.app/Contents/MacOS/firefox -P "work"
165+
166+
```
167+
168+
## Last Updated
169+
October 2025

0 commit comments

Comments
 (0)