Skip to content
BasileChretienPublic

About

Auto-generate clean, customizable academic CVs from open research data (OpenAlex/ORCID). One canonical CV object → HTML/PDF/DOCX/LaTeX/Markdown.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Latest commit

 

History

815 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

SigmaCV

A free, open-source tool that builds your academic CV for you — from the public research record.

License: Apache 2.0 Status: live Languages: 10 Metrics: DORA-aligned Open science: FAIR Open research info: Barcelona-aligned Contributor Covenant DOI Archived: Software Heritage OpenSSF Best Practices OpenSSF Scorecard Cite this repository RRID:SCR_028552

Featured on Product Hunt

Keeping an academic CV up to date is a chore. Every new paper, grant, talk, or editorial role means another manual edit — formatting citations by hand, hunting down details, and redoing the whole thing in a different layout every time a funder or employer asks for one.

SigmaCV does that work for you. You sign in, and it assembles a clean, ready-to-use CV from open research databases — your publications and, where available, your positions, education, funding, and more. You tidy it up, pick a style, and download it as a PDF (or Word, LaTeX, and other formats), or publish it as a web page that keeps itself current.

No copy-pasting your publication list. No spreadsheet of citations. No coding required to use it.

In one line: sign in → your CV fills itself in from public data → remove what isn't yours and pick a style → download it or publish it.

An example academic CV generated by SigmaCV — publications, grants and education, with the researcher's own name highlighted automatically

An example CV — auto-built, with your own name highlighted in author lists. (Illustrative content.)


Who it's for

Anyone with an academic publication record who needs a CV — and the people who help them build one:

  • Researchers and academics at any career stage, from PhD students and postdocs to senior faculty.
  • Clinicians and clinician-scientists juggling papers, trials, and teaching.
  • Librarians and research-office / research-administration staff who help others maintain their records.
  • Anyone simply curious about their own scholarly footprint.

You do not need any technical skills to use SigmaCV. You sign in and click. You sign in with your ORCID iD — a free, unique identifier for researchers (think of it as a permanent digital name tag that stays with you across jobs, name changes, and journals, from orcid.org). It's also what lets SigmaCV find your work reliably. (Self-hosters can optionally enable Google and email magic-link sign-in as well — see below.)

What you get

  • A CV that builds itself. Your publications — and, where the data exists, your positions, education, funding, peer-review and editorial roles — are pulled automatically from open databases. You start from a filled-in CV, not a blank page.
  • The right you. Your work is matched by your researcher identifier (your ORCID iD / OpenAlex author ID), never by your name as text. That avoids the classic "someone else with my name" mix-up that plagues name-based tools — a real headache for common names and for names in non-Latin scripts.
  • You stay in control. Anything that isn't yours, you mark "not mine" and it disappears from your CV (hidden, never silently deleted). You reorder items and choose which sections show. Nothing is invented; you decide what appears.
  • One CV, every format. Because every output is built from the same underlying record, your citations look identical and correct everywhere. Download as PDF, Word (DOCX), LaTeX, Markdown, BibTeX, CSL-JSON, JSON Résumé, or an NIH biosketch.
  • 61 one-click layouts. Apply (and undo) ready-made CV templates for major funders, institutions, and industry in a single click — including UKRI R4RI, the Royal Society, the Swiss SNSF, the US NIH and NSF, the European ERC, and an ICH-GCP clinical-investigator CV. Applying a layout just selects, reorders, and re-titles sections — it never deletes your data.
  • A living public page. Optionally publish your CV as a web page that re-syncs from the open record on its own, so it stays current without you touching it. It's machine-readable too: each publication carries embedded metadata, so a visitor can save your whole publication list straight into Zotero, Mendeley, or any other reference manager with their browser connector — and the page is available as BibTeX / CSL-JSON / JSON-LD.
  • Responsible metrics, or none at all. Metrics are off by default and fully opt-in. When you do turn them on, SigmaCV prefers field-normalized indicators (which account for how citation rates differ between fields) over raw counts, and it never shows a journal's Impact Factor — in line with DORA, the San Francisco Declaration on Research Assessment.
  • Available in 10 languages (see below).

Curation view: your works are added automatically and tagged 'You'; you can hide items, mark anything that isn't yours as 'not mine', and confirm review candidates such as clinical trials

You stay in control: keep, hide, mark "not mine", and confirm review candidates. (Illustrative.)

How it works, in five steps

  1. Sign in — with your ORCID iD (free, and it takes a minute to create at orcid.org; it's also how SigmaCV finds your work).
  2. Your CV appears — SigmaCV looks you up across open sources and assembles your publications and academic history automatically. No copy-paste.
  3. Curate — remove anything that isn't yours, reorder entries, and choose which sections to show. You're always in charge.
  4. Style — pick a citation style, highlight your own name in author lists, optionally switch on metrics, and choose a template or layout.
  5. Export or publish — download in the format you need, or publish a living web page that keeps itself up to date. Missing a paper? Add it by its DOI (the short permanent identifier, like 10.1000/xyz, printed on most articles).

The SigmaCV homepage: sign in with your ORCID iD and your CV builds itself from open research data

The SigmaCV homepage — sign in and your CV builds itself from the open record.

Features at a glance

Feature What it means for you
Auto-populated CV Starts from your real, public record — not a blank form.
Identifier-based matching Finds your work by ORCID / OpenAlex ID, not by name — far fewer wrong-person mix-ups.
"Not mine" curation Hide anything incorrect (it's hidden, not deleted); reorder and choose sections.
Export formats PDF, Word (DOCX), LaTeX, Markdown, BibTeX, CSL-JSON, JSON Résumé, and an NIH biosketch.
61 CV layouts One-click funder / institution / industry templates — e.g. UKRI R4RI, Royal Society, SNSF, NIH, NSF, ERC, an ICH-GCP clinical-investigator CV.
Living public page Optionally publish a web page that re-syncs from the open record; machine-readable (BibTeX / CSL-JSON / JSON-LD) and one-click importable into Zotero / Mendeley.
Consistent citations One citation engine means identical, correctly formatted references in every output.
10 languages English, 中文, Español, Français, Deutsch, 日本語, Português, Italiano, 한국어, Русский.
Responsible metrics Off by default and opt-in; prefers field-normalized indicators; never shows a journal Impact Factor.

✅ Status: live

SigmaCV is live at sigmacv.org — sign in with your ORCID iD and your CV is auto-built from the open record. It's free for individuals and open source. (The name "SigmaCV" is a working title; the Sigma-Score index it alludes to is a design concept rather than a metric the tool computes, and the name may change.)

What this means for you:

  • If you're a researcher: go to sigmacv.org, sign in with ORCID, and build your CV — nothing to install. Star or watch this repository to follow development.
  • If you're technical (or you have an IT team): you can also run your own copy — see For developers & self-hosting.

Where your CV comes from

SigmaCV reads only public research metadata — the kind of catalogue information that is already openly available. It never reaches into private documents or full text, and it never changes anything in those databases on your behalf. It draws on 12 open sources:

Source What it adds to your CV
OpenAlex Your publications and citation metrics
ORCID Your verified identity, plus positions, education, funding, peer-review and service from your ORCID record
Crossref Fills gaps in publication details, and grants
DataCite Your datasets and software
OpenAIRE Additional datasets and software
DBLP Your computer-science conference papers
Open Editors Plus Journal editorial roles (editor / editorial-board memberships), from a dataset collected once a year
ClinicalTrials.gov Clinical trials where you're listed as an investigator
EU CTIS Clinical trials from the EU's public portal
EPO (European Patent Office) Your patents (see note below)
Wikidata Links to your scholarly identity on your public page
ROR Tidies up institution names so the same place isn't listed twice

How matching keeps you safe from mix-ups. Publications and items anchored to your ORCID record carry a stable identifier, so they're matched by your ORCID iD / OpenAlex author ID and included automatically — that's the reliable part. Sources that carry no identifier — clinical trials, patents, and some funder grant lookups — are matched by your name and organization instead, so SigmaCV presents these as review candidates that you confirm rather than adding them silently.

Note on patents: patents come from the European Patent Office and are matched by inventor name. This source only switches on if whoever runs the app provides a free EPO "Open Patent Services" credential. Without it, the patent feature simply stays dormant and adds nothing (no error).

Your data, your rules

Trust matters when a tool touches your professional record. SigmaCV is built privacy-first, as open infrastructure for responsible research assessment:

  • Reads only public research metadata. It never accesses private or full-text content, and it never writes anything back to ORCID or OpenAlex.
  • Nothing is published without your say-so. Public pages require per-field consent and are not search-engine-indexable until you opt in.
  • Your data stays yours. Full data export and one-click account deletion, any time.
  • Built for GDPR and Japan's APPI (the EU and Japanese data-protection laws).
  • No research logging without consent. SigmaCV can support open-science research, but any logging of your choices is off by default and gated behind ethics-board (IRB) approval. Your curation is never recorded for research without your explicit consent.

The codebase has been through three independent security reviews with all findings addressed. The full security posture — and the hardening that whoever deploys it must configure — is documented in SECURITY.md.

Available in 10 languages

The interface is available in:

English · 中文 · Español · Français · Deutsch · 日本語 · Português · Italiano · 한국어 · Русский

Why SigmaCV exists

Beyond being a handy free tool, SigmaCV is open infrastructure for responsible research assessment, run not-for-profit. It deliberately resists the bad habits of research evaluation: metrics are off by default, field-normalized indicators are preferred over raw counts, and a journal's Impact Factor is never shown.

It is also a research vehicle: with explicit consent and under ethics-board oversight, the project can support open-science research. None of that happens without your consent and approved ethics review.

SigmaCV was created by Basile Chrétien (PharmD, MSc, MPH) of Nagoya University.


For developers & self-hosting

Everything below is for people who want to run, host, or contribute to SigmaCV. If you just want to use it, the sections above are all you need.

SigmaCV is fully open source under Apache-2.0 and fully self-hostable today — there's no lock-in to any hosted instance. The repository lives at github.com/BasileChretien/sigmacv.

How it's built

Framework Next.js 15 (App Router) + TypeScript
Database PostgreSQL + Prisma
Auth Auth.js v5 — ORCID iD (Google + email magic-link optional, off by default)
Citations citeproc-js — the Citation Style Language (CSL) engine that also powers Zotero/Mendeley
PDF rendering Playwright (HTML → PDF, headless Chromium)
Validation / tests Zod · Vitest (1,000+ unit & integration tests)
Deploy Docker Compose (app + Postgres + Caddy + render worker) on a single VPS

Architecture (load-bearing — please read before contributing)

  • One canonical CV object (src/lib/canonical/schema.ts) — a single Zod-validated JSON document holds the curated data and the display choices. It is the single source of truth.
  • Every output is a pure function of it (src/lib/render/). There are no per-format pipelines: PDF, DOCX, LaTeX, Markdown, BibTeX, CSL-JSON, JSON Résumé and the NIH biosketch all derive from that one object through a single Renderer interface. (PDF is just the HTML renderer printed with a headless browser.)
  • Citations come only from citeproc-js, so every format renders identical, correctly-styled references.
  • Self-name highlighting is identifier-driven, never name-based — matched by ORCID / OpenAlex author ID, so it works for common names and non-Latin scripts.

Define and respect the canonical schema and the renderer interface before changing anything downstream — everything depends on them.

Run it locally

cp .env.example .env               # then fill in the values
npm install                        # also runs `prisma generate`
npm run fetch-csl                  # vendor CSL styles + en-US locale
npx prisma migrate dev             # create the schema in your database
npx playwright install chromium    # only needed for PDF export
npm run dev                        # http://localhost:3000

Prerequisites: Node.js ≥ 20, a PostgreSQL database (run one with docker compose up -d postgres, or use any local/managed Postgres), and an ORCID API client (the ORCID sandbox is free).

To register an ORCID sandbox client: create an account at https://sandbox.orcid.org, go to Developer Tools, register an app, set the redirect URI to http://localhost:3000/api/auth/callback/orcid, and copy the Client ID / Secret into .env (keep ORCID_ENVIRONMENT=sandbox).

Sandbox ORCID iDs have no OpenAlex records, so you'll see no real publications in the sandbox. Use ORCID_ENVIRONMENT=production with a production ORCID client to pull live data.

Optional extra sign-ins. ORCID is always available and is the primary login. You can additionally enable Google (set GOOGLE_CLIENT_ID + GOOGLE_CLIENT_SECRET) and an email magic link (set EMAIL_SERVER to an SMTP URL + EMAIL_FROM). Each stays hidden until its credentials are present, so the default deployment is ORCID-only — no dead buttons.

Common commands

Command What it does
npm run dev Start the dev server (auto-syncs the DB schema)
npm run build / npm start Production build / serve
npm run typecheck tsc --noEmit
npm test Run the Vitest unit/integration suite
npm run coverage Run tests and enforce the coverage gate
npm run fetch-csl Vendor CSL styles + locale into the citeproc assets
npm run db:migrate prisma migrate dev
npm run e2e Playwright end-to-end journeys (needs a test DB)
npm run e2e:prod Build, then check the production CSP in a browser

Self-host the full stack

cp .env.example .env               # set AUTH_URL, your domain, and secrets
docker compose up --build -d

Caddy terminates TLS and proxies to the app, which applies database migrations on startup and renders PDFs in-process. The full runbook is in DEPLOY.md, and the production go-live checklist — secrets, a production ORCID app, rate limiting, and the security hardening that must be configured before exposing it publicly — is in SECURITY.md and CLAUDE.md.

A note on CLAUDE.md: that file (and the CLAUDE.md files in subfolders) are guidance for AI coding assistants and contributors — internal engineering and operations notes, not user documentation. Start with this README to use SigmaCV.

Contributing

Contributions are very welcome — bug reports, new templates, and especially translating the interface. The internationalization records require a value in all 10 locales, so the build itself catches a missing translation. Start with a good first issue, and please read CONTRIBUTING.md and CODE_OF_CONDUCT.md (Contributor Covenant 2.1) first.

🤝 Looking for a co-maintainer. SigmaCV is run by a single maintainer; if open research infrastructure is your thing, see CONTRIBUTING.md.

Open science & FAIR

SigmaCV is built to the FAIR principles — for both the CVs it produces and the software itself. The full statement is in docs/OPEN-SCIENCE.md, with a sequenced roadmap in docs/OPEN-SCIENCE-ROADMAP.md, and the outreach kit under docs/. Highlights:

  • Identifier-driven, never name-based matching, so records resolve unambiguously.
  • Provenance on every record — source, match basis, and sync timestamps.
  • Privacy by default — per-field publish consent; export and deletion (GDPR / APPI); public pages non-indexable until opted in.
  • Opt-in, field-normalized metrics (default none), consistent with DORA.
  • No lock-in — self-hostable end to end.

Questions or help?

  • A question, or your CV looks wrong? Open a Feedback or question issue — no technical knowledge needed.
  • Browse the FAQ ("What is ORCID?", "Is it free?", "Where does my data come from?").
  • Chat with us in Discussions.
  • More options — and how to report a security issue privately — are in SUPPORT.md.

Citing SigmaCV

If you use SigmaCV in your work, please cite it using the metadata in CITATION.cff — GitHub's "Cite this repository" button renders it automatically. Machine-readable software metadata is also provided in codemeta.json, and archival deposit is configured via .zenodo.json.

SigmaCV is archived on Zenodo with a citable DOI. In papers, cite the concept DOI — 10.5281/zenodo.20594123 — which always resolves to the latest version (the current v0.4.0 release itself is 10.5281/zenodo.23219549).

Chrétien, B. (2026). SigmaCV (v0.4.0). Zenodo. https://doi.org/10.5281/zenodo.20594123

To refer to the tool itself unambiguously, SigmaCV is registered in the SciCrunch resource registry as RRID:SCR_028552.

License

Apache-2.0. Bundled CSL citation styles are CC BY-SA 3.0 — see NOTICE.


SigmaCV is a working name — the Sigma-Score index it alludes to is a design concept, not a metric the tool computes — and may change. Built not-for-profit by Basile Chrétien (PharmD, MSc, MPH), Nagoya University.

About

Auto-generate clean, customizable academic CVs from open research data (OpenAlex/ORCID). One canonical CV object → HTML/PDF/DOCX/LaTeX/Markdown.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages