MR
Mayur Rathi
@github
⭐ 34.1k GitHub stars

Gdpr-Compliant

Gdpr-Compliant是一款data方向的AI技能,核心价值是Apply GDPR-compliant engineering practices across your codebase,可用于解决开发者在data领域的实际问题,帮助用户提升效率、自动化重复任务或优化工作流。

Apply GDPR-compliant engineering practices across your codebase. Use this skill whenever you are designing APIs, writing data models, building authentication flows, implementing logging, handling user

Last verified on: 2026-05-30
mkdir -p ./skills/gdpr-compliant && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/gdpr-compliant/SKILL.md -o ./skills/gdpr-compliant/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# GDPR Engineering Skill


Actionable GDPR reference for engineers, architects, DevOps, and tech leads.

Inspired by CNIL developer guidance and GDPR Articles 5, 25, 32, 33, 35.


> **Golden Rule:** Collect less. Store less. Expose less. Retain less.


For deep dives, read the reference files in `references/`:

- `references/data-rights.md` — user rights endpoints, DSR workflow, RoPA

- `references/security.md` — encryption, hashing, secrets, anonymization

- `references/operations.md` — cloud, CI/CD, incident response, architecture patterns


---


1. Core GDPR Principles (Article 5)


| Principle | Engineering obligation |

|---|---|

| Lawfulness, fairness, transparency | Document legal basis for every processing activity in the RoPA |

| Purpose limitation | Data collected for purpose A **MUST NOT** be reused for purpose B without a new legal basis |

| Data minimization | Collect only fields with a documented business need today |

| Accuracy | Provide update endpoints; propagate corrections to downstream stores |

| Storage limitation | Define TTL at schema design time — never after |

| Integrity & confidentiality | Encrypt at rest and in transit; restrict and audit access |

| Accountability | Maintain evidence of compliance; RoPA ready for DPA inspection at any time |


---


2. Privacy by Design & by Default


**MUST**

- Add `CreatedAt`, `RetentionExpiresAt` to every table holding personal data at creation time.

- Default all optional data collection to **off**. Users opt in; they never opt out of a default-on setting.

- Conduct a **DPIA** before building high-risk processing (biometrics, health data, large-scale profiling, systematic monitoring).

- Update the **RoPA** with every new feature that introduces a processing activity.

- Sign a **DPA** with every sub-processor before data flows to them.


**MUST NOT**

- Ship a new data collection feature without a documented legal basis.

- Enable analytics, tracking, or telemetry by default without explicit consent.

- Store personal data in a system not listed in the RoPA.


---


3. Data Minimization


**MUST**

- Map every DTO/model field to a concrete business need. Remove undocumented fields.

- Use **separate DTOs** for create, read, and update — never reuse the same object.

- Return only what the caller is authorized to see — use response projections.

- Mask sensitive values at the edge: return `****1234` for card numbers, never the full value.

- Exclude sensitive fields (DOB, national ID, health) from default list/search projections.


**MUST NOT**

- Log full request/response bodies if they may contain personal data.

- Include personal data in URL path segments or query parameters (CDN logs, browser history).

- Collect `dateOfBirth`, national ID, or health data without an explicit legal basis.


---


4. Purpose Limitation


**MUST**

- Document the purpose of every processing activity in code comments and in the RoPA.

- Obtain a new legal basis or perform a compatibility analysis before reusing data for a secondary purpose.


**MUST NOT**

- Share personal data collected for service delivery with advertising networks without explicit consent.

- Use support ticket content to train ML models without a separate legal basis and user notice.


---


5. Storage Limitation & Retention


**MUST**

- Every table holding personal data **MUST** have a defined retention period.

- Enforce retention automatically via a scheduled job (Hangfire, cron) — never a manual process.

- Anonymize or delete data when retention expires — never leave expired data silently in production.


**Recommended defaults**


| Data type | Max retention |

|---|---|

| Auth / audit logs | 12–24 months |

| Session / refresh tokens | 30–90 days |

| Email / notification logs | 6 months |

| Inactive user accounts | 12 months after last login → notify → delete |

| Payment records | As required by tax law (7–10 years), minimized |

| Analytics events | 13 months |


**SHOULD**

- Add `RetentionExpiresAt` column — compute at insert time.


🎯 Best For

  • UI designers
  • Product designers
  • Claude users
  • GitHub Copilot users
  • Data professionals

💡 Use Cases

  • Generating component mockups
  • Creating design system tokens
  • Data pipeline auditing
  • Query optimization

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude or GitHub Copilot and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Gdpr-Compliant to Your Work

    Provide context for your task — paste source material, describe your audience, or share existing work to guide the AI.

  4. 4

    Review and Refine

    Edit the AI output for accuracy, tone, and completeness. Add human insight where the AI lacks context.

❓ Frequently Asked Questions

Does this work with Figma?

Some design skills integrate with Figma plugins. Check the Works With section for supported tools.

How do I install Gdpr-Compliant?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/gdpr-compliant/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping usability testing

AI-generated designs should be validated with real users before development.

Ignoring data quality

AI analysis inherits all data quality issues — profile your data first.

🔗 Related Skills