Privacy policy
SwingCodeLab is operated by Jin Junhua, an individual based in China. This policy explains how the site and support correspondence handle information. Contact: margindeck@proton.me.
Calculator inputs
Calculator inputs are processed in your browser and are not sent to us as calculator submissions. Refreshing the page resets them. This is separate from website requests and visit analytics.
No accounts, forms, or newsletter
This version of SwingCodeLab does not offer user accounts, comments, contact forms, or a newsletter. It does not ask you to submit personal information while browsing the site.
Website hosting
Vercel hosts SwingCodeLab. Loading a page sends technical request information to Vercel, such as your IP address, requested URL, browser information, referring page, and request time. This is used to deliver the site, operate the service, and detect errors or abuse. Hosting requests are separate from the calculator inputs processed in your browser.
We use Vercel's standard service settings without a custom log-retention period. Technical logs follow the applicable Vercel service and plan policies. A dashboard's log-viewing window does not mean all provider records are deleted at the end of that window. Questions or requests concerning information we control can be sent to margindeck@proton.me.
Website analytics
Cloudflare Web Analytics is not enabled on this site. SwingCodeLab currently does not load a separate visit-analytics tracker. Vercel still processes the hosting requests described above.
If we enable visit analytics, we will update this notice to identify the service and its data practices, and obtain consent where required before collection begins.
When you email
If you email margindeck@proton.me, Jin Junhua receives your email address, message, and attachments through Proton Mail. We use the information needed to respond, diagnose and fix issues, investigate security or abuse, and meet legal obligations.
Ordinary support correspondence is kept for no more than six months after the issue is closed and deleted sooner when no longer needed. Attachments containing business records, including backups, screenshots, recordings, and sample data, are deleted within 30 days after resolution. This covers copies in our mailbox, downloads, and trash. We may retain a summary with personal and confidential business information removed.
If a legal obligation or unresolved dispute requires longer retention, we keep only the necessary material and review the need periodically. After deletion from copies we control, Proton's separate backup cycle can still apply: Proton Mail publishes a backup retention period of up to 30 days. We do not currently hold research recordings.
Sending feedback or support materials does not give us permission to publish your messages, name, attachments, or confidential business records or use them in marketing. Such use requires separate, explicit permission for the material and channels involved. General suggestions may be used to improve our products.
To request access to, a copy of, correction, or deletion of personal information we control, email margindeck@proton.me. We may need to verify your request. Your rights and any exceptions depend on applicable law.
International processing
Jin Junhua operates SwingCodeLab from China and handles support correspondence there. Vercel operates internationally, including in the United States. Proton Mail documents server storage in Switzerland, Germany, or Norway. These locations concern hosting requests and email; calculator inputs remain in your browser.
Where applicable law requires a transfer mechanism, additional notice, or separate consent, we must meet that requirement before the relevant transfer. Visiting this website is not blanket consent to international processing. Contact margindeck@proton.me for questions about information we control.
External links and services
Links may take you to MarginDeck, Apple, or an affiliate partner. Those services may receive standard request information, including the referring page, when you follow a link. Their own privacy policies and terms apply after you leave SwingCodeLab.
SwingCodeLab does not control how an external service collects or uses information on its website or app.
No behavioral advertising
SwingCodeLab does not run behavioral advertising or use site activity to build advertising profiles. Affiliate links, when present, are disclosed and governed by the destination partner's policies.
Changes and contact
This notice will be updated if the site's data practices change. Questions about privacy can be sent to margindeck@proton.me.