Effective Date: April 19, 2026
This Privacy Policy describes how Hopper Clip ("Hopper Clip", "we", "us", or "our") collects, uses, and shares your personal information when you use our web application (the "Service"). We care deeply about your privacy. Hopper Clip is built with privacy in mind, and as an open-source project, you even have the option to host your own version of Hopper Clip. The GitHub repository for this project is available here.
1. Who We Are
Hopper Clip is a solo indie open-source project developed and maintained by Tomo Suda. Our mission is to provide a useful tool while respecting your privacy.
2. Information We Collect
We collect information to provide and improve our Service.
a. Information You Provide to Us:
- Account Information: When you create an account on Hopper Clip, we collect personal data provided by our authentication provider, Clerk. This includes information such as your email address, username or first name, and a unique user ID.
- Third-Party Authentication Data:If you choose to log in using a third-party service like Google or GitHub via Clerk, we receive only the necessary information for authentication, such as your user ID, email address, and basic profile info (username or first name). We do not access or store any other personal data from your Google or GitHub accounts beyond what is strictly required to verify your identity and create your Hopper Clip account.
- Hopper Clip Content: The core functionality of Hopper Clip involves you creating and managing Grasshopper script snippets. This content, including the Grasshopper XML script files and associated metadata (name, description, tags), is stored by us as part of the Service.
- Shared Content: You may choose to generate time-limited share links for your script snippets. When you do, a unique share token is created that allows anyone with the link to access your shared script content and metadata until the link expires. You may revoke share links at any time.
b. Information We Collect Automatically:
- Usage Data: We collect information about how you interact with the Service using PostHog, our analytics provider. This includes pageviews, page leave events, and specific interactions such as pasting Grasshopper script content. This helps us understand how the app is used and allows us to improve it.
- Device Information: Through PostHog, we may collect information about the device you use to access Hopper Clip, including your IP address, browser type, operating system, screen resolution, and unique device identifiers.
- Error Tracking: We automatically capture JavaScript exceptions that occur while you use the Service to help us identify and fix bugs.
- Cookies and Tracking Technologies:We use cookies primarily for authentication purposes (via Clerk), to keep you logged in and ensure the secure operation of your account. We also use cookies for web analytics (via PostHog) to understand general usage patterns of the Service. PostHog's analytics traffic is proxied through our own domain to ensure reliability. We do not use cookies for tracking purposes across other websites or for targeted advertising.
3. How We Use Your Information
We use the information we collect for the following purposes:
- To Provide and Maintain the Service:This includes allowing you to log in, create, store, and manage your script snippets, and ensuring the core functionality of Hopper Clip operates correctly.
- To Authenticate Users: We use the information from Clerk and your chosen third-party login (Google/GitHub) solely to verify your identity and secure your account.
- To Understand and Improve Our Service:We analyze usage data and web analytics (via PostHog) to understand how users interact with Hopper Clip, identify areas for improvement, and develop new features.
- For Security Purposes: To protect the integrity and security of the Service and our users, including preventing fraud and unauthorized access.
- To Comply with Legal Obligations:To meet any applicable laws, regulations, or legal processes.
4. How We Store Your Information
We are committed to securing your data.
- Metadata Storage: Metadata associated with each script snippet you create — including its name, description, tags, creation and update timestamps, and share link information — is stored in Convex, our backend platform that provides the database and serverless functions for the Service.
- Script Content Storage: The actual Grasshopper XML script content is gzip-compressed and stored in Cloudflare R2 blob storage. Each file is isolated under your unique user ID.
- Access to Your Data: Your data, including your script snippets and associated metadata, is primarily accessible only to you as the authenticated user. As site administrators, we also have access to this data for the purpose of operating, maintaining, and supporting the Service. We implement reasonable security measures to protect your data.
- Client-Side Features: Some features, such as the Grasshopper script documentation tool (DuckerWeb), run entirely in your browser and do not transmit or store any data on our servers.
5. How We Share Your Information
We do not share your personal information with anyone. The only exceptions are:
- Service Providers: We use third-party service providers to help us operate and provide the Service:
- Clerk — authentication and user management
- Convex — database, serverless functions, and real-time data sync
- Cloudflare R2 — blob storage for script content
- PostHog — web analytics and error tracking
- Vercel — application hosting and deployment
These providers are contractually obligated to protect your information and only use it for the purposes of providing their services to us. - Legal Compliance: We may disclose your information if required to do so by law or in response to valid requests by public authorities (e.g., a court order or government agency).
- Business Transfers: In the event that Hopper Clip is involved in a merger, acquisition, or asset sale, your personal information may be transferred as part of that transaction. We will notify you before your personal information is transferred and becomes subject to a different privacy policy.
6. Data Retention and Deletion
We believe in minimal data retention.
- Account Deletion: When you delete your Hopper Clip account, we destroy all your associated data, including your account information, script snippets, and any associated metadata. We do not retain your data after account deletion.
7. Children's Privacy
Hopper Clip is not intended for use by children under the age of 13. We do not knowingly collect personal information from children under 13. If we learn that we have collected personal information of a child under 13, we will take steps to delete such information. If you believe a child under 13 has provided us with personal information, please contact us.
8. Your Privacy Choices and Rights
You have certain rights regarding your personal information:
- Access and Update: You can access and update most of your account information through your Hopper Clip account settings.
- Account Deletion: You have the right to delete your Hopper Clip account at any time. Instructions for account deletion are available within the application or by contacting us. As stated above, upon account deletion, all your data will be destroyed.
- Cookie Preferences: You can typically set your browser to refuse all or some browser cookies, or to alert you when cookies are being sent. If you disable or refuse cookies, please note that some parts of the Service may then be inaccessible or not function properly.
9. Changes to This Privacy Policy
We may update our Privacy Policy from time to time. We will notify you of any changes by sending an email to the email address associated with your account. The "Effective Date" at the top of this Privacy Policy will also be updated. We encourage you to review this Privacy Policy periodically for any changes.
10. Contact Us
If you have any questions about this Privacy Policy or our data practices, please contact us at: privacy@hopperclip.com