# Doxygen configuration for Modest-IoT-Nano-Framework

PROJECT_NAME           = "Modest IoT Nano Framework (C++ Edition)"
PROJECT_BRIEF          = "Lightweight event-driven Arduino framework for resource-constrained IoT devices"
PROJECT_NUMBER         = 1.0.0
OUTPUT_DIRECTORY       = docs/build
CREATE_SUBDIRS         = NO

# Input
INPUT                  = src docs/doxygen-mainpage.md docs/doxygen-groups.dox README.md docs/user-stories.md docs/improvements.md docs/adrs.md LICENSE.md
FILE_PATTERNS          = *.h *.cpp *.md *.dox
RECURSIVE              = YES
EXCLUDE                = cmake cmake-build-debug cmake-build-test examples tests
EXCLUDE_PATTERNS       = */docs/build/* */cmake-build-*/*
USE_MDFILE_AS_MAINPAGE = docs/doxygen-mainpage.md

# Parsing and extraction
EXTRACT_ALL            = YES
EXTRACT_PRIVATE        = NO
EXTRACT_STATIC         = YES
EXTRACT_LOCAL_CLASSES  = YES
JAVADOC_AUTOBRIEF      = YES
MULTILINE_CPP_IS_BRIEF = YES
SORT_MEMBER_DOCS       = YES
INHERIT_DOCS           = YES
WARN_IF_UNDOCUMENTED   = YES
WARN_IF_DOC_ERROR      = YES
WARN_AS_ERROR          = NO
ALIASES                = "runs_on{1}=\"Runs on: \1\""

# Output formats
GENERATE_HTML          = YES
HTML_OUTPUT            = html
GENERATE_LATEX         = NO
GENERATE_XML           = NO

# Source browsing
SOURCE_BROWSER         = YES
INLINE_SOURCES         = NO
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION    = YES

# Graphs (requires Graphviz 'dot')
HAVE_DOT               = YES
CALL_GRAPH             = NO
CALLER_GRAPH           = NO
UML_LOOK               = YES
DOT_IMAGE_FORMAT       = svg
DOT_GRAPH_MAX_NODES    = 100

