Privacy on mandalawi.ca
This is Ahmed Mandalawi’s personal portfolio. You can browse the site, use the guide, play Dev Run and read the public professional evidence and use contact links. The full résumé is shared directly; account and private-link access are not live yet.
Your choice
Analytics helps me understand which parts of the site people use. Selected analytics is on by default. You can turn it off using the settings below; existing refusals are respected. Global Privacy Control and Do Not Track each keep analytics off. There are no ads, data sales, screen recordings or account identity tracking in this release.
What analytics records
Selected events record pages visited, meaningful section and project views, project and contact link clicks, curated guide and Workshop station choices, theme choices and selected Dev Run milestones. Events use fixed categories rather than page text, search queries, full URLs or anything you type. A contact click does not establish that you sent a message; a résumé page visit or file click does not establish that you read it.
Events include broad browser, operating system, device and viewport categories; approved referral and campaign categories; timestamps; and random browser and session identifiers. A returning browser identifier is not proof of the same person, and it does not connect your devices. Sessions here follow activity in one tab, ending after 30 minutes without an observed analytics event or after 24 hours. Last-observed activity is not a guaranteed exit time.
PostHog and location
Analytics uses PostHog Cloud in US Virginia. PostHog receives the connection’s IP address as part of receiving a network request. PostHog uses that address to estimate country, region and city, then discards the raw IP from stored events. Stored analytics excludes coordinates and postal codes. City estimates are approximate and can reflect an internet provider, proxy or VPN location rather than where you are.
Browser storage and retention
An explicit enable preference is kept for up to 180 days. An off preference remains until you change it or clear site storage. When analytics is on, a random browser identifier is stored in this browser. A tab session identifier is kept in session storage, with a 30-minute inactivity limit and a 24-hour maximum. A voluntarily selected test-traffic marker lasts for that tab. This implementation does not set analytics cookies or use device fingerprinting.
PostHog’s free plan provides a one-year event query window. That window is not a promise that every stored event is erased on its anniversary. PostHog’s documented deletion tools are separate from retention; this site does not promise automatic 90-day deletion.
Stopping and privacy requests
Withdrawal stops future analytics and removes the local analytics identifiers and test marker. Your refusal preference remains so the site can honor it. Clearing site storage removes that preference and returns analytics to the default-on state, unless a browser privacy signal suppresses it. Stopping collection does not erase events already delivered; a request already received by PostHog cannot be recalled by the browser. Blocked or missing events are treated as unknown activity.
For questions or requests, email dev@mandalawi.ca. Avoid sending sensitive information. Anonymous events may not be identifiable from your name or email alone. No private account system or anonymous-to-account linking is included.