Applicant Profile Protocol

An open, JSON-based protocol for structured applicant data

v1.0.1

๐Ÿ“„ Specification

Full protocol specification with design goals, architecture, and field definitions.

Read Spec

๐Ÿ“ JSON Schema

Validate APP profiles with the official JSON Schema (draft 2020-12).

View Schema

๏ฟฝ Documentation

Mapping guides, semantic layer, and governance templates.

Browse Docs

๏ฟฝ๐Ÿ“ Examples

10 real-world examples across industries: Software Engineer, Nurse, Marketing, Data Science, and more.

View Examples Full JSON

๐Ÿ™ GitHub

Source code, CLI tools, exporters, and contribution guidelines.

View Repo

๐Ÿ› ๏ธ Online Tools

Create, validate, convert, and import APP profiles directly in your browser

๐Ÿ“

Profile Builder

Create your APP profile using an intuitive form interface.

  • Fill out structured form fields
  • Save drafts to localStorage
  • Preview, copy, and download JSON
  • Real-time validation
Create Profile โ†’
โœ…

Validator

Validate your APP JSON against the official schema.

  • Paste or upload your JSON
  • Detailed error messages
  • Schema compliance check
  • Fix suggestions
Validate JSON โ†’
๐Ÿ”„

Converter

Convert APP profiles to other popular formats.

  • Export to JSON Resume
  • Export to Europass XML
  • Export to HR-XML
  • Export to JSON-LD
Convert Profile โ†’
๐Ÿ“ฅ

Importer

Import existing profiles from other formats to APP.

  • Import from JSON Resume
  • Import from Europass XML
  • Import from HR-XML
  • Complete missing fields via form
Import Profile โ†’
๐Ÿ“„
NEW

PDF Resume Extractor

Upload PDF resumes and extract structured profile data using AI.

  • Upload PDF resumes
  • AI-powered extraction (OpenAI)
  • OCR support (Google Vision)
  • Automatic APP format conversion
  • Download structured JSON
Extract from PDF โ†’

Why APP?

Existing standards are fragmented, outdated, or locked to specific vendors. APP unifies the best ideas into one modern, open protocol.

๐Ÿ“ฆ

JSON-First

Human-readable, machine-validatable. No XML complexity.

๐Ÿ”—

Interoperable

Export to HR-XML, Europass, JSON Resume, ATS formats

๐Ÿค–

AI-Ready

Confidence scores, skill embeddings, JSON-LD semantic layer

๐Ÿ›ก๏ธ

Extensible

Layered architecture: core + enrichment + evidence

๐Ÿ”ข

Versioned

Semantic versioning, immutable specs, backward compatible

๐ŸŒ

Open Standard

Community-driven, no vendor lock-in, Apache-2.0 license

Standards Comparison

See how APP compares to existing applicant profile standards

Feature JSON Resume Europass HR-XML APP
JSON-First โœ… โŒ โŒ โœ…
Schema Validation Limited Partial Strict Strict
Extensible Medium Limited Limited High
AI/ML Ready โŒ โŒ โŒ โœ…
Confidence Scores โŒ โŒ โŒ โœ…
Evidence Layer โŒ Limited โŒ โœ…
JSON-LD / Semantic โŒ โŒ โŒ โœ…
Export to Other Formats Limited Limited Limited โœ… All
Open Source โœ… Partial โœ… โœ…

The Problem with Existing Standards

HR-XML

Mature but heavyweight XML. Enterprise-focused, not developer-friendly. Complex schemas that are hard to implement.

Europass

EU-specific, limited global adoption. Tied to government infrastructure. Not designed for AI/ML workflows.

JSON Resume

Developer-friendly but limited scope. No confidence metrics, no semantic layer, no evidence/verification support.

ATS Vendor APIs

Proprietary, fragmented. Each platform uses different field names. No interoperability between systems.

APP solves this by:

  • Being the canonical source of truth that exports to all other formats
  • Supporting AI workflows with confidence metrics, embeddings, and semantic data
  • Providing verifiable evidence for credentials and claims
  • Staying simple for developers while powerful for enterprises
  • Remaining open and community-governed โ€” no single vendor controls it

Quick Example

{
  "protocol": {
    "name": "ApplicantProfileProtocol",
    "shortName": "APP",
    "version": "1.0.1",
    "uri": "https://app-protocol.org/spec/1.0",
    "id": "urn:app-protocol:profile:abc123"
  },
  "basics": {
    "name": { "given": "Ada", "family": "Lovelace" },
    "headline": "Software Engineer",
    "summary": "Passionate about reliable systems"
  },
  "skills": [
    { "name": "TypeScript", "level": "Expert", "years": 6 }
  ]
}

Install CLI Tools

From npm

npm install -g applicant-profile-protocol

From GitHub Packages

npm config set @caglarorhan:registry https://npm.pkg.github.com
npm install -g @caglarorhan/applicant-profile-protocol

Usage

app validate profile.json
app export:jsonresume profile.json > resume.json
app export:europass profile.json > europass.xml