Skip to main content
Project represents a single LaTeX project in Overleaf. It stores project metadata, ownership and access control, file structure, compilation settings, and collaboration state.

Core Identification & Metadata

  • _id: Unique MongoDB ObjectId identifying the project.
  • name: Project display name.
  • description: Optional textual description of the project.
  • active: Indicates whether the project is currently active.
  • version: Internal schema or project format version.
  • trashed: List of items moved to trash (soft-deleted).
  • deletedDocs: Records of permanently deleted documents.

Ownership & Access Control

  • owner_ref: Reference to the user who owns the project.
  • collaberator_refs: Users with edit permissions.
  • reviewer_refs: Users with reviewer-level access.
  • readOnly_refs: Users with read-only access.
  • pendingEditor_refs / pendingReviewer_refs: Pending invitations.

Token-Based Access

  • tokens: Token registry for shared links.
  • tokenAccessReadOnly_refs: Tokens granting read-only access.
  • tokenAccessReadAndWrite_refs: Tokens granting read–write access.

Activity Tracking

  • lastUpdated: Timestamp of the most recent modification.
  • lastUpdatedBy: User who performed the last update.
  • lastOpened: Timestamp of the last time the project was opened.
  • deletedByExternalDataSource: Whether deletion was triggered by an external integration.

Project Structure

Root Document & Folder
  • rootDoc_id: ObjectId of the main LaTeX entry document (usually main.tex).
  • rootFolder: Inlined representation of the project’s file tree.
Each folder entry contains:
  • name / _id: Folder name and identifier.
  • docs: List of LaTeX source documents with name and _id.
  • fileRefs: Binary file references (images, data files), including:
    • name: Filename
    • created: Upload timestamp
    • rev: Revision counter
    • hash: Content hash for deduplication
    • linkedFileData: External storage linkage (if any)
  • folders: Nested subfolders.

Compilation & Editor Settings

  • compiler: Selected LaTeX engine (pdflatex, xelatex, lualatex, etc.).
  • spellCheckLanguage: Spell checker language for this project.

Public & Sharing Settings

  • publicAccesLevel: Project visibility (private, readOnly, public, etc.).
  • collabratecUsers: Linked users from external collaboration platforms.

Overleaf-Specific Extensions

  • overleaf.history:
    • id: Identifier used by the history service.
    • display: Whether history is enabled and visible.

Internal Versioning

  • __v: Mongoose internal version key for concurrency control.
Here is an real example for Overleaf User.
Last modified on October 4, 2026