Documentation

How to get started

Four chapters to publish your profile card using GitHub as the source of truth.

01

Register

Go to the Register page. Fill in your email, desired username/handle, and GitHub username. You'll receive a unique verification token.Open Register

The token expires after 24 hours. You can request a new one via the token renewal endpoint.
02

Set up your GitHub repo

Fork or clone the GID profile template. Make sure the repository is public and named `GID-digitalcard`. It must contain exactly two files:

GID-digitalcard/

config.json

README.md

bash
git clone https://github.com/raadfhaddad/GID-digitalcard-sample.git
Any extra files, folders, or wrong repo name will cause strict validation to fail.
03

Fill in config.json

Edit config.json using the exact schema shown below. Paste your verification token into the "verify" field. Keep values within limits (skills max 10, certifications max 5) and push to GitHub.

json
{
  "verify": "YOUR_VERIFICATION_TOKEN",
  "first_name": "FirstName",
  "last_name": "LastName",
  "title": "Security Engineer",
  "bio": "Focused on secure systems testing and practical defensive engineering.",
  "location": "Berlin, Germany",
  "email": "identity@gid.sh",
  "website": "https://johndoe.dev",
  "social": {
    "github": "j0hnd0e",
    "linkedin": "johndoe",
    "x": "j0hnd0e"
  },
  "skills": ["skill1", "skill2", "skill3"],
  "certifications": ["cert1", "cert2"],
  "pgp_key": "https://gid.sh/keys/public-key.asc"
}
04

Sync & go live

Visit the Sync page. Enter your GitHub username and submit. The backend pulls your repo, validates the schema, confirms the token, and puts your card live at:Open Sync

/@[your-handle]

Use Sync any time after pushing changes to pull your latest profile updates.

Manage Existing Card

Update or remove your card

These actions are for users who already published a card and want to maintain or remove it.

Update card information

Edit your config.json fields (title, bio, location, links, skills, certifications, etc.), commit and push to the same GitHub repository, then run Sync again.

Your card URL stays the same. A successful sync replaces the currently published profile data.

Delete the card

Replace config.json with the delete payload below, push to GitHub, then run Syncusing the same GitHub username.

json
{
  "verify": "YOUR_ACTIVE_VERIFICATION_TOKEN",
  "delete": true
}
Delete requires an active verification token tied to the same GitHub handle.