About Project Hematite

An open education site for future Rust developers. Each unit of learning is a checkpoint that explicitly declares what you should understand first.

The idea: DAG-based knowledge management

Instead of a flat list of articles, content is arranged as a directed acyclic graph (DAG). Every checkpoint lists its prerequisites, so learners always know what to study next and external tools can reason about progress along the same structure.

Read the full rationale on the blog

Features

  • DAG-based prerequisites — cycles are detected and rejected at build time.
  • Multi-language content — English (primary) and Japanese, with graceful fallback when a translation is pending.
  • Five learning levels — from elementary foundations to cutting-edge topics.
  • Public graph API — the full prerequisite graph and alias map are served as static, content-hashed JSON for external progress trackers and dashboards.
  • Full-text search — powered by Pagefind, fully static, no server required.
  • Math support — KaTeX renders inline and display math in checkpoint pages.

Author

Haruki Nikaidou

Maintainer of Project Hematite. Contributions, issues, and feedback are welcome on GitHub.