Skip to main content

Convert LinkedIn data exports to Markdown

Project description

linkedin2md

PyPI version Python versions License PyPI Downloads GitHub stars CI Contributions Welcome Good First Issues

Convert LinkedIn data exports to clean Markdown files - the ideal format for LLM analysis.

Why Markdown?

Markdown is the lingua franca of AI tools. Once your LinkedIn data is in .md format, you can:

  • Upload to NotebookLM and have conversations about your career history
  • Use Claude Projects to analyze patterns across your professional journey
  • Feed to Obsidian with AI plugins for a personal career knowledge base
  • Run local LLMs (Ollama, LM Studio) for completely private analysis

Example Prompts

Once your LinkedIn data is in an LLM, try asking:

Question Data Used
"What patterns do you see in my career transitions?" experience.md
"What skills have I developed over time?" skills.md, experience.md
"Group my connections by industry" connections.md
"What themes appear in my recommendations?" recommendations.md
"Summarize my job applications and outcomes" job_applications.md
"What qualities do people consistently mention about me?" recommendations.md, endorsements.md
"Based on my experience, what roles should I target?" All files

Installation

Recommended (using pipx - installs in isolated environment):

pipx install linkedin2md

Or with pip (in a virtual environment):

pip install linkedin2md

Note: On modern Linux systems (Debian, Ubuntu 23.04+, Fedora), use pipx to avoid the "externally-managed-environment" error.

Usage

linkedin2md Complete_LinkedInDataExport.zip
linkedin2md export.zip -o ./my-profile
linkedin2md export.zip --lang es
linkedin2md export.zip --pdf  # Generate beautiful PDF CV alongside Markdown files

Then drag the output folder into your favorite AI tool.

Options

Option Description Default
source LinkedIn ZIP export file (required) -
-o, --output Output directory linkedin_export
--lang Output language (en or es) en
--pdf Generate an elegant A4 PDF resume from your profile False

How to Export Your LinkedIn Data

Follow these steps to download your LinkedIn data:

  1. Go to Settings: Log into LinkedIn, click your profile photo in the top right, then select "Settings & Privacy"

  2. Navigate to Data Privacy: In the left sidebar, click "Data privacy"

  3. Request your data: Click "Get a copy of your data"

  4. Select data to download:

    • Choose "Download larger data archive" for complete data
    • Or select specific categories if you only need certain data
  5. Request archive: Click "Request archive"

  6. Wait for email: LinkedIn will process your request and send an email when ready (usually within 24 hours, sometimes up to 72 hours for large archives)

  7. Download the ZIP file: Click the download link in the email. The file will be named something like Complete_LinkedInDataExport_01-20-2025.zip

Note: The download link expires after a few days. Download it promptly and store it safely.

LLM Tools That Work Great With This

Tool Type Best For
NotebookLM Cloud Conversational analysis, audio summaries
Claude Projects Cloud Deep analysis, long context
ChatGPT Cloud General analysis, quick insights
Obsidian + AI plugins Local Personal knowledge base, linked notes
Open Notebook Local/Cloud 16+ AI models, open source
Ollama Local Private, offline analysis

Output

Creates 40+ markdown files in the output directory, organized by category:

Core Profile

  • profile.md - Name, title, contact, summary
  • experience.md - Work history with achievements
  • education.md - Educational background
  • skills.md - Professional skills
  • certifications.md - Certifications and licenses
  • languages.md - Language proficiencies
  • projects.md - Personal and professional projects

Recommendations & Endorsements

  • recommendations.md - Recommendations received
  • endorsements.md - Skill endorsements received

Learning

  • learning.md - LinkedIn Learning courses
  • learning_reviews.md - Course reviews and ratings

Network

  • connections.md - Your connections
  • companies_followed.md - Companies you follow
  • members_followed.md - People you follow
  • invitations.md - Connection invitations sent/received
  • imported_contacts.md - Contacts imported from address book

Content & Activity

  • posts.md - Your posts and shares
  • comments.md - Comments you made
  • reactions.md - Likes and reactions
  • reposts.md - Content you reposted
  • votes.md - Poll votes
  • saved_items.md - Bookmarked content
  • events.md - Events attended

Job Search

  • job_applications.md - All job applications
  • saved_jobs.md - Jobs you saved
  • job_preferences.md - Job seeker preferences
  • saved_job_answers.md - Saved application answers
  • screening_responses.md - Screening question responses
  • saved_job_alerts.md - Job alert settings

Activity History

  • search_queries.md - Search history
  • logins.md - Login history
  • security_challenges.md - Security verification events

Advertising & Privacy

  • ads_clicked.md - Ads you clicked
  • ad_targeting.md - How LinkedIn targets ads to you
  • lan_ads.md - LinkedIn Audience Network engagement
  • inferences.md - LinkedIn's inferences about you

Payments

  • receipts.md - Premium subscription receipts

Services Marketplace

  • service_engagements.md - Service provider engagements
  • service_opportunities.md - Service opportunities

Identity

  • verifications.md - Identity verifications
  • identity_assets.md - Uploaded documents (resumes, etc.)

📄 PDF Resume Generation

With the --pdf flag, linkedin2md converts your parsed structured data into an elegant, print-ready, professional A4 PDF Resume (profile.pdf):

  • Design: Hand-crafted executive layout with pristine typography, clean margins, and print-friendly stylesheets.
  • Prerequisites: Requires weasyprint and markdown libraries to be installed locally:
    pip install weasyprint markdown
    
    (If not installed, linkedin2md will continue to generate your Markdown folder safely, omitting the PDF and providing setup instructions).

🤖 Agentic Development (N3RV Framework)

This repository is fully configured for Agentic Development using opencode and the N3RV orchestration framework. N3RV coordinates specialized autonomous subagents to design, program, test, and audit code changes.

Install N3RV

git clone https://github.com/juanmanueldaza/n3rv.git ~/n3rv
cd ~/n3rv && uv tool install .
cd /path/to/linkedin2md
n3rv init

Quick Commands (Inside Opencode/Claude Code TUI):

  • SDD Pipeline (/sdd-new <change>): Starts the 8-phase Spec-Driven Development workflow (explore ➔ propose ➔ spec ➔ design ➔ tasks ➔ apply ➔ verify ➔ archive) utilizing custom subagents in .opencode/agents/ and .opencode/skills/.
  • Adversarial Review (/judgment-day): Triggers a dual-model adversarial code review (e.g. Claude vs. Copilot) to stress-test pull requests against AGENTS.md standards.
  • Standards Audit (/review): Automatically audits files against strict linting and universal code standards.

We welcome PRs developed and verified using your own AI agent setups!

Contributing

We welcome contributions from everyone! Whether it's a bug fix, new feature, improved documentation, or a translation — we'd love your help.

  • See CONTRIBUTING.md for setup instructions, coding standards, and PR workflow.
  • Look for good first issues for beginner-friendly tasks.
  • Be respectful, inclusive, and constructive in all interactions.

License

GPL-2.0 - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

linkedin2md-0.4.0.tar.gz (103.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

linkedin2md-0.4.0-py3-none-any.whl (71.6 kB view details)

Uploaded Python 3

File details

Details for the file linkedin2md-0.4.0.tar.gz.

File metadata

  • Download URL: linkedin2md-0.4.0.tar.gz
  • Upload date:
  • Size: 103.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for linkedin2md-0.4.0.tar.gz
Algorithm Hash digest
SHA256 e010e26e37677574cd762c413fecd43db8a843321f8a68150afd8fcf0fb0a24e
MD5 b86b710279e84c101af2769730d632de
BLAKE2b-256 2bd7ebe5b9d18ecf27b74f987df6d65add7fd5d0228a559448f7fd9892129c31

See more details on using hashes here.

Provenance

The following attestation bundles were made for linkedin2md-0.4.0.tar.gz:

Publisher: publish.yml on juanmanueldaza/linkedin2md

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file linkedin2md-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: linkedin2md-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 71.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for linkedin2md-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c011b5aa5b2ec64fad775fdd821ce1212c5d7fdf2f728a190b40cb001ac51e02
MD5 73d0db40b3cf6d138b6bd9c806b8523c
BLAKE2b-256 fdf2122c697018d221e8e9707a8b0089e12317bdcc6f2cd9e36b4b6acd9af255

See more details on using hashes here.

Provenance

The following attestation bundles were made for linkedin2md-0.4.0-py3-none-any.whl:

Publisher: publish.yml on juanmanueldaza/linkedin2md

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page