Cargo Features

[dependencies]
quokka = { version = "0.1.0", default-features = false, features = ["tracing", "axum-tracing-opentelemetry", "init-tracing-opentelemetry", "session", "database", "mailing", "script-utf16", "markdown", "markdown-code-highlighting"] }
default = database, markdown, markdown-code-highlighting, session

These default features are set whenever quokka is added without default-features = false somewhere in the dependency tree.

tracing = axum-tracing-opentelemetry, init-tracing-opentelemetry
axum-tracing-opentelemetry tracing?

Enables axum-tracing-opentelemetry ^0.25

init-tracing-opentelemetry tracing?

Enables init-tracing-opentelemetry ^0.25

session default

Enables the session middleware. Disabling this will effectively disable sessions

database default

Enables the database routines in the build_router function

Affects quokka::DefaultState.database

mailing

Enables the Mailing state in the DefaultState

Affects quokka::DefaultState.mailing

script-utf16

Causes the script bytes to be converted from UTF-16 instead of the default UTF-8

markdown default markdown-code-highlighting = pulldown-cmark, pulldown-cmark-escape

Enable the markdown and safe_markdown helpers in handlebars

markdown-code-highlighting default = inkjet, markdown

Enables server-side syntax highlighting for markdown code blocks Still requires CSS for proper theming

Enables language-css, language-html, language-javascript, language-rust and language-scss of inkjet

Affects templating::handle_fenced_code_block

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

pulldown-cmark markdown
pulldown-cmark-escape markdown
inkjet markdown-code-highlighting