Configuration

Statiq Web is designed to make the most common scenarios extremely easy without requiring any configuration, but sometimes you need a little more control.

Bootstrapper Defaults

When you create a bootstrapper using the Bootstrapper.Factory.CreateWeb(args) extension method, it automatically configures all default behavior. If you'd rather have more control over bootstrapper default behavior, you can use the AddWeb() extension method after creating a standard bootstrapper instead.

For example, this creates a bootstrapper without adding pipelines from the entry assembly automatically:

using System;
using System.Threading.Tasks;
using Statiq.App;
using Statiq.Web;

namespace MySite
{
  public class Program
  {
    public static async Task<int> Main(string[] args) =>
      await Bootstrapper
        .Factory
        .CreateDefaultWithout(args, DefaultFeatures.Pipelines)
        .AddWeb()
        .RunAsync();
  }
}

Child Pages

Settings

In addition to the settings available from Statiq Framework, Statiq Web also has a number of settings that can be used to control behavior. Global settings that apply to the generation process and all documents are generally defined in a configuration file. Most settings are also appropriate to define at the directory level or per-document if you only want them to apply to specific files.

Processes

Statiq Web supports running external processes as part of execution. Processes can be defined to run at different stages during execution and can be run one, every time, or stay resident in the background. This provides a high degree of interoperability with other web stacks and existing tooling like the ecosystem of npm-based tools.