Files
yaze/docs/index.md
scawful 3c0964d251 feat(docs): add comprehensive dependency architecture and build optimization document
- Introduced a new document detailing YAZE's dependency architecture, identifying optimization opportunities, and proposing a roadmap for reducing build times and improving maintainability.
- Included a complete dependency graph, key findings, and a detailed refactoring plan to enhance modularity and reduce circular dependencies.
- Document serves as a reference for future development and architectural decisions, aiming for 40-60% faster incremental builds.

Benefits:
- Provides a clear understanding of the current state and future direction for YAZE's architecture.
- Facilitates better decision-making for developers regarding library organization and build optimization strategies.
2025-10-15 16:35:52 -04:00

5.6 KiB

yaze Documentation

Welcome to the official documentation for yaze, a comprehensive ROM editor for The Legend of Zelda: A Link to the Past.

A: Getting Started & Testing

B: Build & Platform

C: z3ed CLI

E: Development & API

F: Technical Documentation

G: Graphics & GUI Systems

H: Project Info

I: Roadmap & Vision

R: ROM Reference


Documentation Standards

Naming Convention

  • A-series: Getting Started & Testing
  • B-series: Build, Platform & Git Workflow
  • C-series: CLI Tools (z3ed)
  • E-series: Development, API & Emulator
  • F-series: Feature-Specific Technical Docs
  • G-series: Graphics & GUI Systems
  • H-series: Project Info (Changelog, etc.)
  • I-series: Roadmap & Vision
  • R-series: ROM Technical Reference

File Naming

  • Use descriptive, kebab-case names
  • Prefix with series letter and number (e.g., E4-emulator-development-guide.md)
  • Keep filenames concise but clear

Organization Tips

For Doxygen integration, this index can be enhanced with:

  • @mainpage directive to make this the main documentation page
  • @defgroup to create logical groupings across files
  • @tableofcontents for automatic TOC generation
  • See individual files for @page and @section usage

Doxygen Integration Tips

  • Add a short @mainpage block to docs/index.md so generated HTML mirrors the manual structure.
  • Define high-level groups with @defgroup (getting_started, building, graphics_gui, etc.) and attach individual docs using @page ... @ingroup.
  • Use @subpage, @section, and @subsection when a document benefits from nested navigation.
  • Configure Doxyfile with USE_MDFILE_AS_MAINPAGE = docs/index.md, FILE_PATTERNS = *.md *.h *.cc, and EXTENSION_MAPPING = md=C++ to combine Markdown and source comments.
  • Keep Markdown reader-friendly—wrap Doxygen directives in comment fences (/***/) so they are ignored by GitHub while remaining visible to the generator.

Last updated: October 13, 2025 - Version 0.3.2