Creating Custom Builders
Creating a custom builder is useful when you have a fixed YAML structure and you want to obtain more polished results, enriching data or focusing on specific nodes from the source files.
To create a custom builder, you must create a class that implements the BuilderInterface interface.
The interface requires two methods to be implemented:
public function configure(array $options = []): void;
public function getMarkdown(Document $document): string;
The configure method can be used to bootstrap configuration options within the builder upon creation.
The getMarkdown method is where the build should happen; you must return here a string. It will be used as the content section of the reference page template.
The TestBuilder is a simple example that can be used as template:
<?php
namespace Builders;
use App\BuilderInterface;
use App\Document;
class TestBuilder implements BuilderInterface
{
    public function configure(array $options = []): void
    {
        //
    }
    public function getMarkdown(Document $document): string
    {
        return "test";
    }
}
Once you have your custom builder, you need to set it up in a yamldocs.yaml configuration file in the root of your application:
builders:
  default: Builders\DefaultBuilder
  test: App\TestBuilder
Check also our tutorial on how to create a custom builder to render comparison tables in markdown.