Skip to content

codika-io/charted

Repository files navigation

Charted

The first collaborative encyclopedia mapping the path from foundations to the frontier of science.

Built with agents, reviewed by experts. Each topic is a node, each prerequisite is an edge. Pick a frontier paper and see every concept you need to read it; pick a topic you already know and see where it leads.

Open the atlas · Contributing · Tech stack

Charted demo


How it works

  • Agents draft. Vast research and topic exploration is what they're good at.
  • Humans review. Domain experts approve content within their declared expertise — tracked publicly in reviewers.yml.
  • GitHub is the source of truth. Topics, reviewer registry, and review-state all live in this repo. Each topic has a tracking issue; PRs reference it.

Scope (MVP)

Charted's current focus is the prerequisite closure to read modern machine-learning papers — the foundations to climb to the frontier of ML/NLP. Topics outside that closure are archived (still in the repo, hidden from list views) until a frontier paper pulls them back in.

To extend scope, run the paper-ingestion script and add a frontier-tier topic:

npm run ingest:paper -- <arxivId> --anchor <topicId>

It fetches arXiv metadata, computes prerequisite-closure overlap with the current MVP, and emits draft frontmatter plus authors.yml entries.

Quick start

git clone https://github.com/codika-io/charted.git
cd charted
npm install
npm run dev

Open http://localhost:4321. The dev server hot-reloads on file changes; predev regenerates the topic graph.

Contributing

There are three ways to contribute, ordered by friction:

  1. In-page flag — every topic page exposes a "Flag" affordance next to the title, prerequisites, and sources. It opens a structured GitHub issue for maintainers (no GitHub account required).
  2. ORCID claim — if a topic cites a paper you authored, signing in with ORCID surfaces a "You're cited here" banner. One click opens a PR adding you to reviewers.yml, verified end-to-end via ORCID + authors.yml.
  3. Pull request — content PRs require reviewer attestation (Reviewer-GitHub, Reviewer-ORCID, Reviewer-Tier trailers). CI posts an advisory comment; final approval is a maintainer call.

See CONTRIBUTING.md for the full flow, including the unified topic/source model, reviewer tiers, and writing guidelines.

Architecture

File / dir What it is
src/content/topics/**.mdx Every topic. Frontmatter + MDX body. Schema in src/content.config.ts.
reviewers.yml Canonical reviewer registry. CI parses this.
authors.yml Paper-author registry referenced by sources[].authors on every topic.
scripts/build-graph.mjs Pre-build step. Emits src/generated/graph.json with bidirectional closures.
scripts/ingest-paper.mjs arXiv → closure overlap + frontmatter draft for adding a single new paper.
scripts/source-wave.mjs OpenAlex → candidate paper list for a seed topic (recency + citation + first-author filters). Output goes to the operator for methodology review before any topic page is written.
scripts/seed-issues.mjs One-time: creates a tracking issue per topic.
scripts/archive-non-mvp.mjs One-time: marks non-MVP topics status: archived.
src/components/islands/AtlasGraph.tsx Layered DAG visualization (ELK + React Flow).
src/pages/atlas.astro Full atlas with three view modes.
src/pages/contributors/[handle].astro Per-reviewer profile page.
.github/PULL_REQUEST_TEMPLATE.md Required reviewer-attestation trailers.
.github/workflows/review-check.yml Soft-enforced CI attestation check.

How authors.yml and reviewers.yml interact

Every paper cited on a topic page lists its authors by key — sources[].authors: [behrouz-2024, gui-2023, …]. Those keys resolve against authors.yml, which carries the author's display name, ORCID, current affiliation, h-index, and (optionally) public contact info. Keys use the convention <lastname>-<year-of-paper>, disambiguated when needed (song-rui-2023, yuan-wei-2023).

reviewers.yml is a separate registry of verified reviewers — domain experts who have signed off on one or more topic pages within their declared expertise. A reviewer entry includes their GitHub handle, ORCID, and the topic IDs they are attested for. When someone signs in via ORCID on the site and matches a key in authors.yml, they can one-click promote themselves into reviewers.yml via a PR.

The two files together encode the core invariant of the project: an agent can draft anything, but a topic page is only "reviewed" once at least one reviewers.yml entry attests to it.

Tech stack

Astro 5 · React 19 · Tailwind CSS 4 · KaTeX · React Flow · ELK · Departure Mono · Instrument Serif

License

Code: MIT. Content (src/content/): CC BY-SA 4.0.

About

An interactive, open-source atlas of the sciences

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors