Last updated: October 9, 2026.
This policy is available in two versions below: a formal Legal English version first, followed by an accessible Plain English summary.
Legal English
1. Who We Are and Scope of This Policy
This Privacy Policy applies to the website https://jadmadi.net (published as Crosscurrent Code) and to associated software applications, developer utilities, prototypes, APIs, and community-building platforms operated by Jad Madi (collectively, the “Services”).
When you use jadmadi.net or any project, tool, or community service that links to or references this Privacy Policy, your information is processed according to the terms outlined here.
2. Information We Collect and Why
We design our services with data minimization and local-first architecture in mind. We collect only what is functionally necessary to deliver, protect, and improve the Services.
A. Contact and Inquiries
If you reach out through the contact page on jadmadi.net, you may submit:
- Name
- Email address
- Phone number (optional)
- Message content
The contact form is protected by Cloudflare Turnstile, which checks browser
signals and your IP address to confirm the request is human. When submitted, our
Cloudflare Workers endpoint securely forwards your message via Resend (our
transactional email delivery provider) directly to contact@jadmadi.net and
sends an automated acknowledgment to the address you provided. We do not store
contact form submissions in a persistent database.
We use this information solely to respond to your inquiries, address feedback, and prevent abuse.
B. User Authentication and Account Data (Google and 𝕏)
Certain interactive tools (such as the 91 Places launch tracker), developer utilities, and community features allow you to optionally sign in to save your settings, sync your records across devices, or participate in community activities.
We support authentication via third-party identity providers:
Google Authentication (Google Sign-In)
When you choose to sign in with Google, we use standard OAuth 2.0 and OpenID
Connect protocols. We request only basic profile scopes (openid, email,
profile).
Through this authorization, we receive and store:
- your Google User ID (a unique subject identifier);
- your email address and its verification status;
- your display name (full name or given name); and
- your profile picture URL (avatar).
We never request, receive, or store your Google account password. We do not request access to your private Google Drive files, Google Contacts, Google Calendar, Gmail messages, or other unneeded Google services.
𝕏 (Twitter) Authentication
When you choose to “Sign in with 𝕏”, we process your login using the standard
OAuth 2.0 Authorization Code Flow with PKCE (Proof Key for Code Exchange)
requesting minimal read permissions (users.read).
Through this flow, we receive and store:
- your 𝕏 User ID (a permanent numeric identifier);
- your 𝕏 handle / username;
- your display name; and
- your profile avatar URL.
We never request, receive, or store your passwords, private direct messages, contacts, email address, or posting permissions.
Purpose and Cloud Synchronization
We use account data obtained through Google and 𝕏 authentication to:
- authenticate your identity and maintain your active session;
- create and manage your user account across our Services;
- synchronize your application progress, project workspaces, submission checklists, and custom preferences across multiple browsers and devices; and
- enable secure participation in developer or community features.
When authenticated, your account profile and application state are stored in
our secure Cloudflare D1 SQL database (crosscurrent-db) or edge data storage
bound to your unique user ID.
Local-First and Anonymous Use
You are never required to sign in to browse articles or use our general tools.
For unauthenticated visitors, interactive tools store state entirely within
your local browser storage (localStorage). No server database records are
created for anonymous use.
C. Google API Services User Data and Limited Use Disclosure
Jad Madi and jadmadi.net adhere strictly to Google user data guidelines.
Our use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
Specifically:
- We do not transfer Google user data to third parties, except as strictly necessary to provide or improve the core features of our user-facing applications, comply with applicable laws, or as part of an operational reorganization.
- We do not use or transfer Google user data for serving advertisements, including personalized, re-targeted, or interest-based advertising.
- We do not allow humans to read your Google user data unless we have obtained your affirmative agreement for specific items, it is necessary for security investigations (such as investigating abuse or a bug), it is required to comply with applicable law, or the data has been aggregated and anonymized.
- We do not use Google user data to train, evaluate, or fine-tune generalized artificial intelligence or machine learning models.
D. Request, Delivery, and Infrastructure Logs
Our Services are hosted and delivered through global edge infrastructure, principally Cloudflare. When you visit our sites or use our APIs, standard technical request data may be processed, including:
- IP address;
- browser and device characteristics;
- requested URL, HTTP method, and protocol;
- timestamp of the request; and
- diagnostic and security metrics.
This information is processed to deliver edge caching, mitigate distributed denial-of-service (DDoS) attacks, ensure application reliability, and enforce network security.
E. Cookies and Similar Technologies
We avoid tracking cookies. We use cookies and local storage strictly where functionally necessary:
- Session Cookie: When you sign in with Google or 𝕏, we issue an
encrypted,
HttpOnly,SameSite=Lax, secure cookie (cc_session) to keep you authenticated during your session. This cookie is used solely for session identification and is never used for third-party ad tracking. - Analytics: We use Cloudflare Web Analytics, a privacy-respecting,
cookieless measurement service. It reports aggregated page views through our
own
/cdn-cgi/rumendpoint without using persistent identifiers or tracking visitors across unrelated websites. - Local Storage: Client-side tools use your browser’s
localStorageto save offline progress and user interface preferences locally on your device.
You can manage, restrict, or clear cookies and local storage through your browser settings at any time.
F. RSS and Subscriptions
Links to “Subscribe” on jadmadi.net point to our open RSS feed. The feed does not require an account or collect personal information.
G. Embedded Media and Third-Party Content
Certain articles or project pages may include embedded third-party media (such as YouTube video embeds or audio clips). Interacting with those embeds may allow those third parties to collect data under their respective privacy policies.
H. AI-Assisted Workflows
Certain software modules or essays may be developed or edited with artificial intelligence tooling during development. That internal engineering process does not transmit visitor personal data to AI model providers during regular site browsing or tool operation.
3. How We Share Data
We do not sell, rent, trade, or monetize your personal information or Google user data under any circumstances.
We share data only with third-party service providers who assist us in operating our infrastructure, subject to confidentiality and security obligations:
- Cloudflare for edge hosting, CDN caching, Cloudflare Workers compute, D1 database storage, Turnstile verification, and cookieless web analytics;
- Google Identity Services when you choose to authenticate via Google;
- X Corp when you choose to authenticate via 𝕏;
- Resend for transactional email routing when you submit the contact form; and
- Law Enforcement or Legal Process only if strictly required by applicable law, regulation, subpoena, or lawful government order.
4. Data Retention
- Contact correspondence: Retained in our email inbox for as long as reasonably necessary to respond and manage ongoing correspondence.
- Account and Progress Data: Account profiles and saved application progress stored in Cloudflare D1 are retained until you delete your account or request data erasure.
- Infrastructure Logs: Server logs and security logs are retained in accordance with Cloudflare’s standard retention cycles.
5. Your Rights, Data Deletion, and Revoking Access
You have control over your data regardless of your jurisdiction:
- Revoking Google Sign-In Access: You can revoke our application’s access to your Google account at any time through your Google Account Security settings at https://myaccount.google.com/permissions.
- Revoking 𝕏 Sign-In Access: You can revoke our access to your 𝕏 account at any time via your 𝕏 settings under “Connected apps”.
- Requesting Complete Data Deletion: You can request the permanent deletion of your account profile, synchronized progress, and any stored records by sending an email from your registered address to jadmadi-support@googlegroups.com (or jad@jadmadi.net) or using the contact form at https://jadmadi.net/contact. We will delete your records within 30 days upon verifying ownership of the account.
- Local Data Clearance: You can clear locally stored progress at any time
by clearing your browser’s site data and cache for
jadmadi.net.
6. Where Data Is Processed
Because our Services utilize global edge networks and distributed cloud providers, your data may be routed and processed on servers located in various jurisdictions worldwide. By using our Services, you understand that your information may be handled across these geographic locations in compliance with this policy.
7. Security
We take reasonable technical, operational, and organizational precautions to
protect your personal data. All traffic is encrypted in transit using modern
HTTPS/TLS protocols. Authentication sessions are stored in encrypted,
HttpOnly cookies. Passwords are never collected or stored. However, no
Internet transmission or storage system can be guaranteed to be completely
immune to breach or interruption.
8. Children’s Privacy
Our Services are designed for general audiences, developers, and tech enthusiasts. They are not directed at children under the age of 13 (or under 16 where applicable by regional law). We do not knowingly collect personal data from children. If you believe a child has provided us with personal information, please contact us immediately so we can remove it.
9. Changes to This Policy
We may update this Privacy Policy from time to time to reflect modifications in our Services, new community features, or evolving regulatory requirements. The current version will always be published at this URL with the “Last updated” date prominently displayed.
10. Contact
For privacy inquiries, user support, data deletion requests, or questions regarding our handling of Google or 𝕏 user data, contact:
- Support Email: jadmadi-support@googlegroups.com
- Direct Email: jad@jadmadi.net
- Web: https://jadmadi.net/contact
- Operator: Jad Madi
Plain English
The Short Version
jadmadi.net (Crosscurrent Code) is an independent personal website, developer hub, and project portfolio operated by Jad Madi.
This policy covers jadmadi.net and associated developer tools, prototypes, and community projects that Jad operates under this brand.
If you browse essays or use tools like the 91 Places Launch Tracker, everything works out of the box without needing an account. Your checklist items are saved entirely inside your own browser storage.
If you choose to sign in with Google or 𝕏 (Twitter), we use standard secure logins to remember your account and sync your progress across your phones, laptops, and tablets. We only get your basic public profile and email. We never get your password, never read your private files, and never post on your behalf.
What We Collect
- Contact form: Name, email, optional phone number, and your message. Sent directly to my email via Resend after a Turnstile human check.
- Google Sign-In: Unique user identifier, email address, name, and profile picture. Used only to identify your account and sync your data.
- 𝕏 Sign-In: Unique numeric ID, username, name, and profile avatar.
- Saved Progress: Interactive tool data (like directory submission statuses or application preferences) linked to your user account in our Cloudflare D1 database.
- Edge Logs: Standard, non-invasive technical logs (IP, browser type, page visited) through Cloudflare to maintain security and edge caching.
What We Do Not Do
- We do not sell, rent, or monetize your data.
- We do not run third-party tracking or advertising cookies.
- We do not train AI models on your private account data or Google user data.
- We never ask for passwords, private Google Drive or Gmail data, or 𝕏 posting permissions.
- We do not force you to sign in to read content or use client-side tools.
Your Choices
- Stay anonymous: Use interactive tools without signing in. Your data stays on your own machine.
- Revoke access: You can revoke Google permissions at
https://myaccount.google.com/permissionsor 𝕏 permissions in your app settings at any time. - Delete everything: Email jadmadi-support@googlegroups.com (or jad@jadmadi.net) or submit a request on our contact page, and your account and synced data will be wiped from our database.
- Block cookies: You can disable cookies in your browser; articles and client-side tools will continue to work.
Final Note
No system is infallible, but we treat user privacy and data security with the care, restraint, and transparency we expect from software we use ourselves.