Candy Database · Documentation

database.json The file at the root of a database folder. It is JSON, and every key is optional. The only thing Candy Database needs is for the file to exist.
{ "title": "My Add-on", "description": "What this documents.", "home": "Getting_Started/Introduction", "default_language": "English", "version_hint": { "file": "res://addons/my_addon/info.json", "key": "version" }, "header": "_header.txt", "header_scrolls": "1", "footer": "_footer.txt", "footer_scrolls": "1", "theme_name": "Candy_Arts", "theme": { "accent_color": "#ff9ed8" }, "style": { "link_color": "#6b3fd6" }, "tags": { "setting": {"color": "#15803d"} } }
KeyMeaning
idWhat identifies the database. Defaults to the folder's name. Two databases with the same id can not both be used.
titleThe name in the database drop-down. Defaults to the folder's name.
descriptionA line about the database.
homeThe id of the page that opens first. Defaults to the first page.
default_languageThe language folder that opens when the reader has no preferred language this version has. Defaults to English. See Databases, versions and languages.
version_hintOpens the version the project has installed. file is a JSON file, key the value in it that holds the version, written with dots for nested ones (install.version). The value is matched with the version folder names, ignoring a leading v.
headerThe file name of the header. Defaults to _header.txt. See Header and footer.
header_scrolls"1" (the default) if the header scrolls up with the page, "0" if it stays fixed above it.
footerThe file name of the footer. Defaults to _footer.txt.
footer_scrolls"1" (the default) if the footer scrolls with the page, "0" if it stays fixed below it.
theme_nameThe id of a theme to show the database with. See Style and theme.
themeChanges to the tab's look, over the theme. See Theme keys.
styleThe page's colors and background. See Style keys.
tagsTags of the database's own, to color words in its pages. See Tags below.
Tags tags gives a database BBCode tags of its own, to color the kinds of words its pages mention: setting names, file names, commands... Each tag is written [name]...[/name] in the pages:
"tags": { "setting": {"color": "#15803d", "dark_color": "#6fdc8c"}, "symbol": {"color": "#c2452d", "dark_color": "#ff8f7a", "bold": "1"}, "url": {"color": "#b45309", "dark_color": "#ffa25c"} }
KeyMeaning
colorThe tag's color.
dark_colorThe color used instead on a dark page, so the tag reads on any theme. Left out: color.
bold"1" to show the tag's text in bold.
italic"1" to show it in italics.
A tag name is made of letters, digits and _, and can't be one of Godot's own tags (b, color, table...). Two of them can be used to restyle Godot's own: url colors links, and code colors [code] text, instead of the style's link_color and code_color. A reader who turns the database's style off sees the tags in the page's text color, still in bold or italics. All values are text, including numbers ("2").