"""Webpage project utilities (Docusaurus build / clear / deploy / pdf / etc.). Project metadata lives in `server.py` so that adding a new webpage there automatically wires it up here. Command layout: `mytoolkit webpage [options]` e.g. `mytoolkit webpage mywebpage build --serve`. """ import re import shutil import subprocess import time import click from bin.commands.server import ( manageable_services, get_service, no_color_env, server_start, server_stop, server_restart, server_status, ) _PROJECTS = manageable_services() def _run_npm(name: str, script: str, label: str) -> None: """Run `npm run