mix descripex.manifest (descripex v0.7.0)

Copy Markdown View Source

Writes a JSON manifest of Descripex-annotated modules to a file.

The manifest is produced by Descripex.Manifest.build/1 and contains version, timestamp, and full function metadata (docs, hints, specs, signatures) for every public function in the given modules.

Usage

# Explicit module list
mix descripex.manifest MyApp.Funding MyApp.Risk

# Auto-discover annotated modules in an application
mix descripex.manifest --app my_app

# Custom output path
mix descripex.manifest --output priv/manifest.json MyApp.Funding

# Pretty-printed JSON
mix descripex.manifest --pretty MyApp.Funding

Options

  • --output / -o — output file path (default: api_manifest.json)
  • --pretty — indent JSON for readability
  • --app — discover all modules in the given OTP app that export __api__/0

Prerequisites

This task requires jason for JSON encoding. Most Elixir projects already include it. If not, add {:jason, "~> 1.4"} to your deps.

Module Resolution Order

  1. Module names passed as CLI arguments
  2. --app flag (discovers modules exporting __api__/0)
  3. config :descripex, :manifest_modules application env

Summary

Functions

Run the manifest export task.

Functions

run(args)

@spec run([String.t()]) :: :ok

Run the manifest export task.