{"id":49453613,"url":"https://github.com/ClearGDPR/ClearGDPR","last_synced_at":"2026-06-02T05:00:40.043Z","repository":{"id":82370774,"uuid":"134732441","full_name":"ClearGDPR/ClearGDPR","owner":"ClearGDPR","description":"GDPR Compliance Solution","archived":false,"fork":false,"pushed_at":"2018-12-21T00:59:24.000Z","size":4563,"stargazers_count":216,"open_issues_count":36,"forks_count":43,"subscribers_count":39,"default_branch":"master","last_synced_at":"2024-03-17T03:19:58.147Z","etag":null,"topics":["architecture","blockchain","gdpr","javascript","react"],"latest_commit_sha":null,"homepage":"https://www.cleargdpr.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ClearGDPR.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-05-24T15:09:37.000Z","updated_at":"2024-02-25T15:22:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"2a5f66d2-a116-4e83-86d7-cbc58f1cc621","html_url":"https://github.com/ClearGDPR/ClearGDPR","commit_stats":null,"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/ClearGDPR/ClearGDPR","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClearGDPR%2FClearGDPR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClearGDPR%2FClearGDPR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClearGDPR%2FClearGDPR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClearGDPR%2FClearGDPR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ClearGDPR","download_url":"https://codeload.github.com/ClearGDPR/ClearGDPR/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ClearGDPR%2FClearGDPR/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33806987,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture","blockchain","gdpr","javascript","react"],"created_at":"2026-04-30T04:01:03.701Z","updated_at":"2026-06-02T05:00:40.037Z","avatar_url":"https://github.com/ClearGDPR.png","language":"JavaScript","funding_links":[],"categories":["📦 Legacy \u0026 Inactive Projects"],"sub_categories":[],"readme":"# ClearGDPR Platform [![Build Status](https://travis-ci.com/ClearGDPR/ClearGDPR.svg?branch=master)](https://travis-ci.com/ClearGDPR/ClearGDPR)\n\n![Logo](logo.png)\n\n\n## Introduction\n\nClearGDPR is a backend framework that allows web applications to comply with the new **General Data Protection Regulation - GDPR**. \n\nClearGDPR focuses on data privacy, transparency, integrity and availability for the users of a web application, and applies Blockchain technology to achieve those at a high level.\n\nClearGDPR was built on top of Quorum, a Blockchain that extends Ethereum and is focused in privacy and transparency. In ClearGDPR, Blockchain technology is used as an immutable audit log.\n\nClearGDPR offers a front-end SDK and an HTTP API in order to allow your web application to manage personal user data according to the GDPR articles.\n\nClearGDPR can be implemented in 2 different ways:\n- ElementSDK - set of ReactJS component, recommended, simplest.\n- HTTP API - There's a Postman HTTP requests collection to facilitate the initial interaction with the HTTP API.\n\nFinally, ClearGDPR is a containerized solution, applying Docker containers, images, services, volumes and networks.\n\n# Table of contents\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n\n- [Architecture](#architecture)\n  - [Project structure](#project-structure)\n- [Requirements](#requirements)\n- [Quick Start](#quick-start)\n  - [Full Installation Setup](#full-installation-setup)\n  - [Development Mode](#development-mode)\n- [Integrations](#integrations)\n  - [Element SDK](#element-sdk)\n    - [Demo](#demo)\n    - [Installation](#installation)\n    - [Code Example](#code-example)\n  - [HTTP API](#http-api)\n    - [Example](#example)\n    - [Documentation](#documentation)\n      - [Website](#website)\n      - [Postman Collections](#postman-collections)\n- [Further reading](#further-reading)\n- [Troubleshooting](#troubleshooting)\n- [Roadmap](#roadmap)\n- [License](#license)\n- [Contributing](#contributing)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n# Architecture\n\n![ClearGDPR Architecture](/docs/diagram.png)\n\n## Project structure\n\n```\nproject root\n├─ admin                      # Admin UI to manage the controller\n├─ api                        # Code for the ClearGDPR API implementation\n├─ cg                         # Code for the ClearGDPR API implementation\n├─ docker                     # Helpers for docker run, stop, start.\n├─ frontend                   # demo front-end integrating ClearGDPR ElementSDK\n├─ packages\n  ├─ js-sdk                   # Code for the ClearGDPR JS SDK implementation\n  └─ element-sdk              # Code for the ClearGDPR ElementSDK implementation\n├─ quorum                     # Blockchain related docker images and helper tools\n├─ travis                     # Scripts used on the CI server\n├─ website                    # ClearGDPR public website\n```\n\n# Requirements\n- NodeJS v7.6+\n- Yarn\n- Docker\n- Docker-Compose\n\nBefore proceeding, follow the [installation guide](https://github.com/ClearGDPR/ClearGDPR/blob/master/INSTALL.md) to install all requirements.\n\n# Quick Start\nThe `docker-compose.yml` contains configuration for a reference development environment of one Data Controller and one Data Processor and all required dependencies.\n\n## Full Installation Setup\nThe wizard will setup all the dependencies and demo website for you. Please follow the command line prompt.\n```\nnode setup.js\n``` \n\nOnce the setup is done, you will have access to:\n- http://localhost:3000 - Demo Website\n- http://localhost:4000 - ClearGDPR Admin (pwd admin/clearGDPR)\n- http://localhost:8082 - ClearGDPR API\n\n## Development Mode\nDocker is used for each part of the project, you can run all of them in watch (with nodemon) and development mode:\n```\ndocker/run\n```\nPlease make sure you ran `node setup.js` before.\n\n# Integrations\n\n## Element SDK\n\n### Demo\nComing soon.\n\n### Installation\nComing soon.\n\n### Code Example\nComing soon.\n\n## HTTP API\n### Example\nThe API uses \"Bearer Authentication\", in which the users must bear a valid Jason Web Token - JWT, in order to access the HTTP API.\nThe system considers 3 types of users:\n- subject. A user of your website/app who will store his personal data into the website/app.\n- manager. A management user who has admin access to the system in you company.\n- processor. A management user who has admin access to the system in a 3rd party data partner.\n\nHere's an example HTTP request to list all the companies who are 3rd party data partners (a.k.a processors) with your company:\n```\ncurl -X GET \\\n  \u003cClearGDPR_API_URL\u003e/api/subject/processors \\\n  -H 'Authorization: Bearer \u003cJWT\u003e' \\\n  -H 'Cache-Control: no-cache' \\\n  -H 'Content-Type: application/json'\n```\n\n### Documentation\n#### Website\nSoon.\n#### Postman Collections\n- ClearGDPR API https://gist.github.com/Nelrohd/6c3e554ea0dcfea27784fa21dc5e4586\n- Demo website (create/login user) https://gist.github.com/Nelrohd/e9d0bc833dd5cf4216eafd4b214e482e\n\n# Further reading\n\nEach part of the project has additional README documentation in its subfolder:\n* [Quorum nodes README](quorum/README.md)\n* [ClearGDPR (CG) API README](cg/README.md)\n* [Docker definitions README](docker/README.md)\n* [Demo backend README](api/README.md)\n* [Demo frontend README](frontend/README.md)\n* [Updating Travis Configuration](TRAVIS.md)\n\n# Troubleshooting\n\nSee the [Troubleshooting guide](TROUBLESHOOTING.md)\n\n# Roadmap\n\n* ~~Development deploy~~  \n* ~~HTTP API support for the right to consent and right to be forgotten(complete erasure)~~\n* ~~All events related to users data are written succesfully to the blockchain~~\n* ~~Quorum smart contract that stores the state of processors and controllers~~\n* ~~Processor run mode and controller run mode, with events propagated between nodes through the blockchain smart contract~~\n* ~~Example UI with registration/consent and erasure abilities~~\n* ~~Encryption of all personal data on CG nodes~~\n* ~~Robust integration test suite of CG nodes for both processor and controller mode~~\n* ~~Admin dashboard design + front-end code (configuration, subject \u0026 processor status)~~\n* ~~Automataic Quick Start script~~\n* ~~Interactive Quick Start wizard~~\n* ~~Admin dashboard hooked up to controller state via the CG api~~\n* ~~HTTP API support for the remaining GDPR article actions/rights~~\n* ~~More granular controls of consent/revoking of data (ie. which data can be shared specifically)~~\n* ~~End-2-End test suite of controller/processor interactions via blockchain~~\n* ~~SDK for implementing ClearGDPR from your frontend~~\n* Evolving functionalities, upgradability and security in the smart contract\n* Stage/Production deploy\n* Usage of Quorum’s custom privateFor method to whitelist nodes that are privy to specific events\n* Complete documentation\n* Drop in wordpress plugin\n* Commercial middleware plugin(s)\n\n# License\n\nThis project is licensed under [GNU LGPL LICENSE](LICENSE)\n\n# Contributing\n\nSee [Contributing](CONTRIBUTING.md) \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FClearGDPR%2FClearGDPR","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FClearGDPR%2FClearGDPR","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FClearGDPR%2FClearGDPR/lists"}