explaingit

davidichalfyorov-wq/openxiv

Analysis updated 2026-06-24

33TypeScriptAudience · researcherComplexity · 5/5LicenseSetup · hard

TLDR

An open preprint server built on the AT Protocol where papers, reviews, and AI-use disclosures live as federated records in each author's Bluesky PDS rather than a private database.

Mindmap

mindmap
  root((OpenXiv))
    Inputs
      Paper submissions
      LaTeX or PDF source
      AI disclosures
    Outputs
      Federated records
      Trust Passport
      OAI-PMH feed
    Use Cases
      Open preprint hosting
      Independent researcher publishing
      Trust badge overlay
    Tech Stack
      TypeScript
      Fastify
      PostgreSQL
      Astro
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Publish preprints as federated AT Protocol records that live in the author's own PDS

USE CASE 2

Run a self-hosted open preprint server with OAI-PMH for library indexers

USE CASE 3

Show ORCID, citation, and integrity badges on arxiv.org pages via the browser extension

USE CASE 4

Declare AI use on a paper with a structured disclosure record of none, assistant, coauthor, or primary

What is it built with?

TypeScriptFastifyPostgreSQLBullMQAstroReactDocker

How does it compare?

davidichalfyorov-wq/openxivkentjuno/kjaudiobook-v1thedecipherist/markdownai
Stars333333
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyhardhardeasy
Complexity5/54/53/5
Audienceresearcherdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Needs Node 22, PostgreSQL with pgvector, Redis, S3 storage, and Docker-sandboxed Tectonic plus GROBID for the LaTeX pipeline.

AGPL-3.0-or-later: free to use and modify, but any networked service built on it must also be released under AGPL.

In plain English

OpenXiv is an open preprint server for scientific papers built on top of the AT Protocol, the same decentralized network that powers Bluesky. Papers, threads, endorsements, AI-use disclosures, and reviews are not stored as private database rows, they are real records under the namespace app.openxiv.* that live in each author's PDS, the personal data store provided by Bluesky or by the author themselves. From there they federate out into the wider AT Protocol network. The live site is openxiv.net, the project has an ISSN and a Wikidata entry, and it is indexed by science indexers like BASE, CORE, and the Bluesky directory of custom feeds. The project is explicitly open to independent researchers without institutional backing. You sign in with ORCID, Google, or your Bluesky did:plc identity. There is no endorsement gate and no affiliation filter. AI use is allowed but has to be declared with a structured disclosure value, one of none, assistant, coauthor, or primary, recorded as an app.openxiv.disclosure record. If a submission fails policy checks, the server returns a public refusal packet that names the failure mode and lets the work come back as a revision, rather than banning the author. The README lists a long table of what is already live: stable paper ids of the form subject.year.NNNNN, profile pages, a six-stage submission saga with per-stage retry, a paper page at /abs/{id} with PDF, HTML, three explainer tiers, and a saga timeline, a Trust Passport that exposes lanes for identity, provenance, citations, integrity, and external attestations, an OAI-PMH 2.0 endpoint for library indexers, six custom Bluesky feeds, refusal packets, a browser extension that overlays trust badges on arxiv.org pages, and pre-registration records. The stack is TypeScript on Node 22. Fastify 5 serves the API with zod-typed routes, PostgreSQL 16 with pgvector and Drizzle ORM holds the database, BullMQ on Redis 7 runs the heavy jobs, and S3-compatible storage holds the files. Tectonic compiles LaTeX to PDF in a sandboxed Docker container, latexml produces HTML, GROBID pulls out metadata, and DeepSeek V4 Flash with Gemini embeddings handles explainer text and similarity. Astro 5 with React 19 islands renders the web pages. The project is licensed AGPL-3.0-or-later.

Copy-paste prompts

Prompt 1
Bring up OpenXiv locally with Postgres, Redis, S3, and Tectonic and submit a test paper end to end.
Prompt 2
Add a new lane to OpenXiv's Trust Passport that surfaces ROR-verified institutional affiliations.
Prompt 3
Write a client that reads app.openxiv.disclosure records from a Bluesky PDS and graphs AI use over time.
Prompt 4
Help me adapt OpenXiv's six-stage submission saga pattern for a different document workflow in BullMQ.

Frequently asked questions

What is openxiv?

An open preprint server built on the AT Protocol where papers, reviews, and AI-use disclosures live as federated records in each author's Bluesky PDS rather than a private database.

What language is openxiv written in?

Mainly TypeScript. The stack also includes TypeScript, Fastify, PostgreSQL.

What license does openxiv use?

AGPL-3.0-or-later: free to use and modify, but any networked service built on it must also be released under AGPL.

How hard is openxiv to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is openxiv for?

Mainly researcher.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.