PyForm operates in full compliance with the Hong Kong Personal Data (Privacy) Ordinance (Cap. 486). This page explains, in plain language, what student data we collect, why we collect it, where it lives, and how your school can control it.
Email, display name, avatar (optional). Collected at signup or via school invite. Used to authenticate.
Python source code, stdout/stderr, task submissions, teacher feedback, scores. Used to deliver the IDE and grading workflow.
Run counts, XP, streaks, badge unlocks. Used to motivate the student and inform their teacher.
Slash command, prompt length, model tier, allow/block status. Used for policy audits and teacher review. Content of prompts is not retained after the response is returned.
All personal data is stored in Supabase-hosted PostgreSQL clusters. Schools on the Enterprise plan may elect for a dedicated instance in an APAC region. Database access is restricted by Row-Level Security policies that enforce the school → class → student hierarchy at the query layer.
When a student invokes an allowed AI command, the prompt is sent through our proxy endpoint to either Zhipu AI (default) or Moonshot Kimi (fallback) over TLS. Contractual DPAs forbid model-provider retention or training on our payloads.
Under the PDPO, every student (or their parent / guardian, for minors) has the right to:
Requests can be made through the school administrator (fastest) or directly via privacy@pyform.dev. We respond within 40 days as required by the Ordinance.
School administrators can export a CSV of all grades and submission metadata at any time from the School Admin console. Full JSON export of a single student's data is available on request (turnaround ≤ 14 days).
Database + Auth. EU / US data centres. GDPR-compliant. DPA signed.
Hosting + CDN. Processes routing metadata; no student payload storage.
AI inference. Contract forbids retention or training on our payloads.
Payments (schools only). PCI-DSS Level 1.
Data Protection Officer: Luca Yau — privacy@pyform.dev. For urgent matters, please cc schools@pyform.dev.