Skip to content

mulesoft/docs-site-ui

Repository files navigation

MuleSoft Documentation Site UI

This project generates the UI for the MuleSoft documentation site.

Use the UI

To use this UI with Antora, first find the URL of the UI bundle for the Latest release on this page:

Then, plug that URL into the your playbook file, replacing %UI_BUNDLE_URL% with the URL you found in the previous step.

ui:
  bundle:
    url: %UI_BUNDLE_URL%

Read on to learn how to build the UI from source.

Development Quickstart

This section offers a basic tutorial for learning how to preview the UI and bundle it for use with Antora.

Prerequisites

To preview and bundle the UI, you need the following software on your computer:

git

First, make sure you have git installed.

$ git --version

If not, download and install the git package for your system.

Node 12

Next, make sure that you have at least Node 12 installed.

$ node -v

If this command fails with an error, you don’t have Node installed. If the command doesn’t report a Node 12 version or better (e.g., v12.22.10), you don’t have a suitable version of Node installed.

While you can install Node from the official packages, we strongly recommend that you use nvm (Node Version Manager) to install and manage Node. Follow the nvm installation instructions to set up nvm on your machine.

Once you’ve installed nvm, open a new terminal and install Node 12 using the following command:

$ nvm install 12

You can switch to this version of Node at any time using the following command:

$ nvm use 12

To make Node 12 the default in new terminals, type:

$ nvm alias default 12

Now that you have Node 12 installed, you can proceed with installing the Gulp CLI and the project dependencies.

Gulp CLI

You’ll need the Gulp command-line interface (CLI) to run the build. This package provides the gulp command which, in turn, executes the version of Gulp declared by the project.

You should install the Gulp CLI globally (which resolves to a location in your user directory if you’re using nvm) using the following command:

$ npm install -g gulp-cli

Now that you have the prerequisites installed, you can fetch and build the default UI project.

Clone and Initialize the UI Project

Clone the UI project using git:

$ git clone https://github.com/mulesoft/docs-site-ui &&
  cd "`basename $_`"

The example above clones the UI project and then switches to the project folder on your filesystem. Stay in this project folder when executing all subsequent commands.

Use npm to install the project’s dependencies inside the project. In your terminal, execute the following command:

$ npm install

This command installs the dependencies listed in package.json into the node_modules/ folder inside the project. This folder does not get included in the UI bundle and should not be committed to the source control repository.

Preview the UI

The UI project is configured to preview offline. The files in the preview-site-src/ folder provide the sample content that allow you to see the UI in action. In this folder, you’ll primarily find pages written in AsciiDoc. These pages provide a representative sample and kitchen sink of content from the real site.

To build the UI and preview it in a local web server, run the preview command:

$ gulp preview

You’ll see a URL listed in the output of this command:

[18:24:29] Server started http://localhost:8080
[18:24:29] Running server

Navigate to this URL to preview the site locally.

While this command is running, any changes you make to the source files will be instantly reflected in the browser. This works by monitoring the project for changes, running the build task if a change is detected, and sending the updates to the browser.

Press Ctrl+C to stop the preview server and end the continuous build.

Package for Use with Antora

If you need to package the UI in order to preview the UI on the real site in local development, run the following command:

$ gulp bundle

The UI bundle will be available at build/ui-bundle.zip. You can then point Antora at this bundle using the --ui-bundle-url command-line option.

External Code Contributions

We are currently not accepting external code contributions. Thank you for your interest!