Project Settings JSON Schema

Every LaTeX project includes a settings file. This page explains each field, the allowed types, and how to edit the file without breaking your project.

Where is this file?

In the file explorer, open:

/project/project.rudra.config.json

While that file is open in the editor, hover a property for a hint, use autocomplete for valid keys, and watch for red underlines if a value does not match the schema.

What this file controls

project.rudra.config.json stores project-level settings: which .tex file is the main file, which compiler to use, and whether auto-compile and autosave are on. Extra properties are not allowed. If you add a key that is not listed below, the editor will flag it as invalid.

Field reference

PropertyTypeRequiredWhat it meansExample
configVersionstringYesVersion of this settings file format. Use "1.0" for the current format."1.0"
projectobjectYesIdentifies the project and its main LaTeX file.—
project.typestringYesKind of project. LaTeX projects use "latex"."latex"
project.rootstringYesProject root folder. "." means the project root itself."."
project.mainTexPathstringYesPath to the main .tex file, relative to project.root. This is the file used as the compile entry point."hello-world/main.tex"
latexobjectYesLaTeX toolchain settings for this project.—
latex.compilerobjectYesThe compiler used to build the PDF.—
latex.compiler.namestringYesCompiler name. Current projects typically use "tectonic". Other names are allowed."tectonic"
latex.compiler.versionstringYesCompiler version as text (not a number). For example "0.15.0"."0.15.0"
syncobjectYesEditor sync defaults stored with the project.—
sync.autoCompilebooleanYesWhen true, the project should recompile after you edit. Use true or false, not "true".true
sync.autosavebooleanYesWhen true, the project should save automatically. The property name is autosave (lowercase s).true

Valid example

A complete settings file looks like this:

{
  "configVersion": "1.0",
  "project": {
    "type": "latex",
    "root": ".",
    "mainTexPath": "hello-world/main.tex"
  },
  "latex": {
    "compiler": {
      "name": "tectonic",
      "version": "0.15.0"
    }
  },
  "sync": {
    "autoCompile": true,
    "autosave": true
  }
}

Common mistakes

  • Using "true" or "false" for sync.autoCompile or sync.autosave. These must be booleans: true / false.
  • Setting latex.compiler.version to a number such as 0.15. It must be a string, for example "0.15.0".
  • Removing project.mainTexPath. The main TeX path is required.
  • Adding extra keys (for example at the top level or inside sync). Unknown properties are rejected.
  • Changing configVersion away from "1.0" unless a newer format has been published.

Hints in the editor

When you edit /project/project.rudra.config.json, the editor uses this schema automatically:

  • Hover a property name to read what it does.
  • Start typing inside an object to see allowed property names.
  • Invalid types, missing required fields, and unknown keys are underlined.

Still stuck? Visit Help or contact support.

Last updated: Aug 17, 2026