Skip to content

docs(examples): add 10 examples and split 5 oversized documents#624

Merged
kcenon merged 6 commits into
mainfrom
docs/issue-621-add-examples-split-docs
Apr 8, 2026
Merged

docs(examples): add 10 examples and split 5 oversized documents#624
kcenon merged 6 commits into
mainfrom
docs/issue-621-add-examples-split-docs

Conversation

@kcenon

@kcenon kcenon commented Apr 8, 2026

Copy link
Copy Markdown
Owner

Closes #621

Summary

  • Add 10 new runnable examples covering previously uncovered APIs (DI container, event bus, circuit breaker, config watcher, CLI parser, feature flags, circular buffer/object pool, C++20 concepts, adapter pattern, health check)
  • Split 5 oversized documentation files (42-75KB each) into 16 focused sub-documents for improved navigation
  • Standardize README section order (Quick Start before Requirements)

What

New Examples (5 → 15)

Example API Covered
service_container_example.cpp di/service_container.h
event_bus_example.cpp patterns/event_bus.h
circuit_breaker_example.cpp resilience/circuit_breaker.h
config_watcher_example.cpp config/config_watcher.h
cli_parser_example.cpp config/cli_config_parser.h
feature_flags_example.cpp config/feature_flags.h
utility_containers_example.cpp utils/circular_buffer.h, utils/object_pool.h
concepts_showcase_example.cpp concepts/core.h
adapter_pattern_example.cpp adapters/adapter.h
health_check_example.cpp interfaces/monitoring/health_check.h

Document Splits

Original Size Split Into
FEATURES.md 42KB 3 files (core, DI/config, integration)
FEATURE_FLAGS_GUIDE.md 48KB 2 files (usage, reference)
CONFIG_GUIDE.md 54KB 4 files (unified, watcher, CLI, loader)
PRODUCTION_GUIDE.md 75KB 4 files (config, deploy, observability, security)
INTEGRATION_GUIDE.md 73KB 3 files (deps, patterns, lifecycle)

Original files replaced with index pages linking to sub-documents. All content preserved verbatim.

README

  • Moved Quick Start before Requirements (canonical section order)

Test Plan

  • All 10 examples compile with cmake --build (CI verification)
  • All split document links resolve correctly
  • No broken cross-references in docs
  • README renders correctly on GitHub

dependabot Bot added 6 commits April 9, 2026 07:18
Add examples for: DI service container, event bus pub/sub,
circuit breaker, config watcher, CLI parser, feature flags,
circular buffer & object pool, C++20 concepts, adapter pattern,
and health check interface.

Closes partially #621
Move Quick Start before Requirements to follow the ecosystem's
canonical README section ordering convention.
Split for improved readability and navigation:
- FEATURES.md (42KB) -> 3 files (core, DI/config, integration)
- FEATURE_FLAGS_GUIDE.md (48KB) -> 2 files (usage, reference)
- CONFIG_GUIDE.md (54KB) -> 4 files (unified, watcher, CLI, loader)
- PRODUCTION_GUIDE.md (75KB) -> 4 files (config, deploy, observability, security)
- INTEGRATION_GUIDE.md (73KB) -> 3 files (deps, patterns, lifecycle)

Original files replaced with index pages linking to sub-documents.
All content preserved verbatim.
- Add sub-namespace using declarations (di, resilience, config,
  interfaces, adapters, utils)
- Fix config_watcher API calls (remove non-existent methods)
- Fix error accessor (error() returns string, not error_info)
- Fix structured binding lambda capture for C++17 compat
- health_check_result: use field-by-field init (no aggregate init)
- cli_parser: access error_info.message field directly
- adapter: remove non-existent get_adapter_depth/is_adapter methods
- concepts: reorder includes so std::string is in scope for concepts
- config_watcher: add cstring include for strerror
- concepts_showcase: simplify safe_unwrap to avoid Unwrappable concept
  instantiation issues
- feature_flags: conditionally include <source_location> header
- config_watcher: move <cstring> before config_watcher.h to fix
  strerror undeclared in library header's inotify code
@kcenon kcenon merged commit 3bfd8f2 into main Apr 8, 2026
29 checks passed
@kcenon kcenon deleted the docs/issue-621-add-examples-split-docs branch April 8, 2026 22:48
kcenon added a commit that referenced this pull request Apr 13, 2026
* docs(examples): add 10 new examples covering uncovered APIs

Add examples for: DI service container, event bus pub/sub,
circuit breaker, config watcher, CLI parser, feature flags,
circular buffer & object pool, C++20 concepts, adapter pattern,
and health check interface.

Closes partially #621

* docs(readme): reorder sections to canonical Quick Start first layout

Move Quick Start before Requirements to follow the ecosystem's
canonical README section ordering convention.

* docs: split 5 oversized documents into focused sub-documents

Split for improved readability and navigation:
- FEATURES.md (42KB) -> 3 files (core, DI/config, integration)
- FEATURE_FLAGS_GUIDE.md (48KB) -> 2 files (usage, reference)
- CONFIG_GUIDE.md (54KB) -> 4 files (unified, watcher, CLI, loader)
- PRODUCTION_GUIDE.md (75KB) -> 4 files (config, deploy, observability, security)
- INTEGRATION_GUIDE.md (73KB) -> 3 files (deps, patterns, lifecycle)

Original files replaced with index pages linking to sub-documents.
All content preserved verbatim.

* fix(examples): resolve namespace and API errors in new examples

- Add sub-namespace using declarations (di, resilience, config,
  interfaces, adapters, utils)
- Fix config_watcher API calls (remove non-existent methods)
- Fix error accessor (error() returns string, not error_info)
- Fix structured binding lambda capture for C++17 compat

* fix(examples): resolve API mismatches and include ordering

- health_check_result: use field-by-field init (no aggregate init)
- cli_parser: access error_info.message field directly
- adapter: remove non-existent get_adapter_depth/is_adapter methods
- concepts: reorder includes so std::string is in scope for concepts
- config_watcher: add cstring include for strerror
- concepts_showcase: simplify safe_unwrap to avoid Unwrappable concept
  instantiation issues

* fix(examples): add missing source_location and cstring includes

- feature_flags: conditionally include <source_location> header
- config_watcher: move <cstring> before config_watcher.h to fix
  strerror undeclared in library header's inotify code

---------

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Enhancement] Add missing examples and split oversized documentation

1 participant