### Configure Minisite Plugin
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Example configuration for the yupiik-tools-maven-plugin's minisite goal. This setup defines site base URL, logo text, index subtitle, and FTP server details for deployment.
```xml
io.yupiik.mavenyupiik-tools-maven-pluginbuild-and-deploy-docpackageminisitehttps://yupiik.github.io/${project.artifactId}My ProductThe top product.http://mini.yupiik.netftp://ftpupload.net/htdocs
```
--------------------------------
### Serve Minisite for Live Preview
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Starts a live preview server for your Minisite. This is useful during development to see changes in real-time.
```sh
mvn yupiik-tools:serve-minisite
```
--------------------------------
### Blog Post Metadata Example
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Example of an AsciiDoc file configured for blog post export. Use attributes like 'minisite-blog-published-date', 'minisite-blog-categories', 'minisite-blog-authors', and 'minisite-blog-summary' to define post properties.
```asciidoc
= My Post
:minisite-blog-published-date: 2021-02-16T16:00
:minisite-blog-categories: others,simple
:minisite-blog-authors: Romain Manni-Bucau
:minisite-blog-summary: Second post.
Bla bla
```
--------------------------------
### YEM Shell/Bash Setup for Environment Management
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/yem.adoc
Integrates YEM environment management into your shell's prompt command. This setup ensures that YEM's environment is activated automatically when your shell starts or when you change directories (in Zsh).
```bash
yem_env() {
eval $(yem env)
}
if [[ -n "$ZSH_VERSION" ]]; then
chpwd_functions+=(yem_env)
else
trimmed_prompt_command="${PROMPT_COMMAND%${PROMPT_COMMAND##*[![:space:]]}}"
[[ -z "$trimmed_prompt_command" ]] && PROMPT_COMMAND="yem_env" || PROMPT_COMMAND="${trimmed_prompt_command%\;};yem_env"
fi
yem_env
```
--------------------------------
### Example Project with Yupiik OSS Extension
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
A sample Maven POM file demonstrating how to enable the Yupiik OSS extension by including the yupiik-tools-maven-plugin.
```xml
4.0.0trueio.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools.version}release
```
--------------------------------
### Simplified YEM Shell/Bash Setup (Non-Zsh)
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/yem.adoc
A simplified version of the YEM shell setup for shells other than Zsh. It configures the PROMPT_COMMAND to evaluate YEM's environment settings.
```bash
yem_env() {
eval $(yem env)
}
trimmed_prompt_command="${PROMPT_COMMAND%${PROMPT_COMMAND##*[![:space:]]}}"
[[ -z "$trimmed_prompt_command" ]] && PROMPT_COMMAND="yem_env" || PROMPT_COMMAND="${trimmed_prompt_command%\;};yem_env"
yem_env
```
--------------------------------
### Serve AsciiDoc Slides via HTTP
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
This command starts an HTTP server to preview your AsciiDoc slides. Useful for live development.
```sh
mvn yupiik-tools:serve-slides
```
--------------------------------
### Execute Fatjar Executable
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/cli.adoc
Run the `yupiik-tools-cli` fatjar directly using `java -cp`. This is useful for environments where Maven is not installed or for simpler execution.
```bash
java -cp yupiik-tools-cli-$version-fatjar.jar
```
--------------------------------
### Advanced Audit Report Generation
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
A comprehensive example demonstrating how to skip certain phases and modules, and configure the audit plugin. This ensures dependencies are resolved before the audit runs.
```sh
mvn \
compile -Dcompiler.skip=true \
io.yupiik.maven:yupiik-tools-maven-plugin:${plugin.version}:audit \
-Dyupiik.pdf.source=$PWD/report.adoc -Dyupiik.pdf.target=/tmp/report \
-Dlicense.skip=true -Dfront.build.skip=true \
-pl -documentation
```
--------------------------------
### PDF Rendering without pom.xml
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
This example shows how to use the PDF goal of the Yupiik Tools Maven Plugin directly from the command line without needing a `pom.xml` file. This feature is available from version 1.0.22 onwards.
```bash
mvn \
io.yupiik.maven:yupiik-tools-maven-plugin:$VERSION:pdf \
-Dyupiik.pdf.source=content.adoc \
-Dyupiik.pdf.target=.
```
--------------------------------
### Custom Maven Lifecycle Participant Example
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Example of a custom Maven lifecycle participant that can be programmatically handled. To enable this, configure the related extension in your Maven build.
```java
import org.apache.maven.AbstractMavenLifecycleParticipant;
import org.apache.maven.MavenExecutionException;
import org.apache.maven.execution.MavenSession;
import org.codehaus.plexus.component.annotations.Component;
@Component(role = AbstractMavenLifecycleParticipant.class, hint = "my-module-customizer")
public class YupiikContributor extends AbstractMavenLifecycleParticipant {
@Override
public void afterProjectsRead(final MavenSession session) throws MavenExecutionException {
System.out.println(">>>> hello: " + session);
}
}
```
--------------------------------
### Inline POM Contributor Extension Example
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Example of a Java class implementing the inline POM contributor extension. This class will be compiled and executed during the Maven build lifecycle.
```java
import org.apache.maven.AbstractMavenLifecycleParticipant;
import org.apache.maven.execution.MavenSession;
import org.codehaus.plexus.component.annotations.Component;
```
--------------------------------
### Inline POM Contributor Example
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
A Java class implementing AbstractMavenLifecycleParticipant to customize the Maven build process during the afterProjectsRead phase.
```java
import org.apache.maven.AbstractMavenLifecycleParticipant;
import org.apache.maven.execution.MavenSession;
import org.codehaus.plexus.component.annotations.Component;
@Component(role = AbstractMavenLifecycleParticipant.class, hint = "my-module-customizer")
public class YupiikContributor extends AbstractMavenLifecycleParticipant {
@Override
public void afterProjectsRead(final MavenSession session) {
System.out.println(">>>> hello: " + session);
}
}
```
--------------------------------
### Chaining git-report and PDF Goals
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
This example demonstrates how to chain the git-report and PDF goals of the Yupiik Tools Maven Plugin. It specifies the plugin version, output directories, and source files for both goals.
```bash
mvn \
io.yupiik.maven:yupiik-tools-maven-plugin:1.0.23:git-report \
io.yupiik.maven:yupiik-tools-maven-plugin:1.0.23-SNAPSHOT:pdf \
-Dyupiik.workDir=work \
-Dyupiik.git-report.dotGit=/path/to/project/.git \
-Dyupiik.git-report.target=log.adoc
-Dyupiik.pdf.source=log.adoc \
-Dyupiik.pdf.target=.
```
--------------------------------
### Basic PDF Rendering
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
This is the simplest setup to render an Asciidoctor file to PDF using the Yupiik Tools Maven Plugin. Ensure the plugin is defined and a file named `src/main/pdf/index.adoc` exists.
```sh
mvn yupiik-tools:pdf
```
--------------------------------
### Minisite Confluence Export Profile
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
An example Maven profile configuration for the yupiik-tools-maven-plugin's minisite goal to export content to Atlassian Confluence. Requires specific Confluence URL, authorization, and space ID.
```xml
confluenceio.yupiik.mavenyupiik-tools-maven-pluginconfluenceprepare-packageminisitefalsehttps://base.atlassian.net/wiki/Basic base64_value_of(your mail:your token)YOURSPACEfalse
```
--------------------------------
### Asciidoc with LaTeX Formula
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Example of using Asciidoc syntax to embed LaTeX formulas within a document, utilizing the jlatexmath extension for PDF generation.
```asciidoc
[jlatexmath]
--
x = a + b
--
This formula (jmath:_[a + b]) is cool.
```
--------------------------------
### ASCII Diagram to SVG Conversion Example
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/ascii2svg.adoc
This snippet shows the basic syntax for defining an ASCII diagram with custom styles for elements. The output is an SVG representation of the diagram.
```asciidoc
.-------------. .--------------.
|[Red Box] | |[Blue Box] |
'-------------' '--------------'
[Red Box]: {"fill":"#aa4444"}
[Blue Box]: {"fill":"#ccccff"}
```
--------------------------------
### Generate Git Report using Maven
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Executes the git-report goal of the Yupiik Tools Maven Plugin to generate an asciidoc report from Git commits. Assumes a basic setup with the plugin defined and a report file template.
```sh
mvn yupiik-tools:git-report
```
--------------------------------
### Generate Minisite
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Use this command to render a static website using the Minisite functionality. Requires Java 11.
```sh
mvn yupiik-tools:minisite
```
--------------------------------
### Chain Maven Plugins from Command Line
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Demonstrates how to chain multiple Yupiik Tools Maven Plugin goals directly from the command line without needing a pom.xml declaration. Useful for sequential tasks like generating reports and PDFs.
```bash
mvn \
io.yupiik.maven:yupiik-tools-maven-plugin:$version:git-report \
io.yupiik.maven:yupiik-tools-maven-plugin:$version:pdf \
-Dyupiik.workDir=work \
-Dyupiik.git-report.dotGit=/path/to/project/.git \
-Dyupiik.git-report.target=log.adoc
-Dyupiik.pdf.source=log.adoc \
-Dyupiik.pdf.target=.
```
--------------------------------
### Initialize Bash CLI Skeleton
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Use this command to initialize a folder with a Bash CLI structure. The 'directory' parameter specifies the bootstrap location.
```bash
mvn yupiik-tools:script-cli-skeleton -Dyupiik.script-cli-skeleton.directory=/path/to/skeleton
```
--------------------------------
### Parse Asciidoc Content to HTML
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/asciidoc-java.adoc
Instantiate a `Parser`, parse the Asciidoc content into a `Document` model, create a renderer (e.g., `AsciidoctorLikeHtmlRenderer`), visit the document with the renderer, and retrieve the final HTML output. The `Parser` and `Document` can be singletons, but `Visitor` instances should be created per thread.
```java
final var parser = new Parser();
final var doc = parser.parse(myDocContent, new Parser.ParserContext(ContextResolver.of(Path.of("asciidoc/content"))));
final var renderer = new AsciidoctorLikeHtmlRenderer();
renderer.visit(doc);
final var html = renderer.result();
```
--------------------------------
### Minisite Git Deployment Configuration
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Configuration options for the minisite goal to push generated website content to a Git branch, such as 'gh-pages'. Supports specifying branch, credentials, and URL.
```xml
refs/heads/gh-pagesyour-usernameyour-passwordproject.scm.urlyour-git-repo-urlfalsepublic/trueSSH_KEY_ENV_VAR
```
--------------------------------
### Render AsciiDoc Slides
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Use this command to render AsciiDoc files into slides. Ensure you have a `src/main/slides/index.adoc` file.
```sh
mvn yupiik-tools:slides
```
--------------------------------
### Configure Maven Plugin for LaTeX Support in PDF
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Shows how to add the jlatexmath dependency to the yupiik-tools-maven-plugin configuration in pom.xml to enable LaTeX formula rendering in generated PDFs.
```xml
io.yupiik.mavenyupiik-tools-maven-pluginorg.scilab.forgejlatexmath1.0.7
```
--------------------------------
### Pom-less PDF Rendering with Maven
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Command to render an Asciidoctor file to PDF using the yupiik-tools-maven-plugin directly from the command line, without requiring a pom.xml configuration.
```bash
mvn \
io.yupiik.maven:yupiik-tools-maven-plugin:$version:pdf \
-Dyupiik.pdf.source=content.adoc \
-Dyupiik.pdf.target=.
```
--------------------------------
### Enable Yupiik OSS Extension Properties
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Configuration properties to enable and customize the Yupiik OSS extension in a Maven project's root.
```xml
true11
UTF-8
none
none
```
--------------------------------
### YEM Auto-path Configuration Properties
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/yem.adoc
Defines properties for setting up tools and distributions using YEM's auto-path feature. The 'version' property is required if the prefix matches a tool name.
```properties
prefix.version = 1.2.3 <1>
prefix.provider = xxxx <2>
prefix.relaxed = [true|false] <3>
prefix.envVarName = xxxx <4>
prefix.addToPath = [true|false] <5>
prefix.failOnMissing = [true|false] <6>
prefix.installIfMissing = [true|false] <7>
prefix.toolName = 1.2.3 <8>
```
--------------------------------
### Yupiik OSS Extension Configuration in Build
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Include the yupiik-tools-maven-plugin as an extension in your project's build configuration. This is necessary to activate the Yupiik OSS extension features.
```xml
4.0.0trueio.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools.version}release
```
--------------------------------
### Execute Maven Plugin Goals as CLI Commands
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/cli.adoc
Use `yupiik-tools-cli` to access Maven plugin goals directly from the command line. This allows for scripting and automation outside of the standard Maven build process.
```bash
yupiik-tools-cli
```
--------------------------------
### Enable LLM Chat in Minisite Plugin Configuration
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/minisite-llm.adoc
Configure the yupiik-tools-maven-plugin to enable the LLM chat feature and specify the model ID. This is done in the plugin's configuration section within the pom.xml.
```xml
io.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools.version}true <1>
Llama-3.2-3B-Instruct-q4f16_1-MLC <2>
<3>
dev.langchain4jlangchain4j-embeddings-all-minilm-l6-v21.16.1-beta26
```
--------------------------------
### Synchronize GitHub Releases Configuration
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Configure the plugin to synchronize artifacts with GitHub releases. This includes specifying GitHub repository details and artifact information.
```xml
io.yupiik.mavenyupiik-tools-maven-plugindefault-clinonesynchronize-github-releasesgithub.comhttps://repo.maven.apache.org/maven2/yupiik/tools-maven-pluginio.yupiik.mavenyupiik-tools-maven-pluginjarpomjarsourcesjarjavadoc
```
--------------------------------
### Generate Audit Report
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Executes the audit mojo to generate a report. It's recommended to set the source directory relative to multiple modules for better reactor handling.
```sh
$ mvn io.yupiik.maven:yupiik-tools-maven-plugin:${plugin.version}:audit \
-Dyupiik.pdf.source=$PWD/report.adoc \
-Dyupiik.pdf.target=/tmp/report
```
```sh
mvn io.yupiik.maven:yupiik-tools-maven-plugin:1.0.0-SNAPSHOT:audit -Dyupiik.pdf.source=report.adoc -Dyupiik.pdf.target=/tmp/report.pdf
```
--------------------------------
### Yupiik OSS Extension Properties
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Configure the Yupiik OSS extension by setting properties in your root project's pom.xml. This enables the extension and allows customization of Java version, encoding, and other build settings.
```xml
true11
UTF-8
none
none
```
--------------------------------
### Enable Yupiik Tools Maven Plugin Extension
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Configuration snippet to enable the Yupiik Tools Maven Plugin as an extension in your Maven build. This is necessary for custom lifecycle participants.
```xml
io.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools-maven-plugin.version}
```
--------------------------------
### Confluence Export Configuration
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Configure the plugin to export content to Atlassian Confluence. Ensure the URL is correct for cloud or on-premise instances and provide authorization credentials. The 'skipIndex' option can be used to exclude index.html files.
```xml
confluenceio.yupiik.mavenyupiik-tools-maven-pluginconfluenceprepare-packageminisitefalsehttps://base.atlassian.net/wiki/Basic base64_value_of(your mail:your token)YOURSPACEfalse
```
--------------------------------
### Enable Inline POM Contributor Extension
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Maven build configuration to enable the inline POM contributor extension by adding the yupiik-tools-maven-plugin to the build extensions.
```xml
io.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools-maven-plugin.version}
```
--------------------------------
### Convert Cucumber Reports to Asciidoc Configuration
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Configure the plugin to convert Cucumber JSON reports to an Asciidoc file. Specify source directory and target file path.
```xml
io.yupiik.mavenyupiik-tools-maven-plugindefault-clinonecucumber2asciidoc= My Cucumber Report${project.build.directory}/cucumber-reports/${project.build.directory}/generated-adoc/cucumber.report.adoc
```
--------------------------------
### Maven Asciidoctor Macro: maven_dependencies
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/_documentation/src/main/minisite/content/mojos.adoc
Use the maven_dependencies macro to list project dependencies within Asciidoc. Specify the desired scope for filtering dependencies.
```adoc
[maven_dependencies,scope=compile]
--
--
```
--------------------------------
### Maven Plugin Definition
Source: https://github.com/yupiik/tools-maven-plugin/blob/master/README.adoc
Defines the Yupiik Tools Maven Plugin in a Maven project's pom.xml. Ensure to use the correct version.
```xml
io.yupiik.mavenyupiik-tools-maven-plugin${yupiik-tools.version}
```
=== COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.