Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@weave-md/basic

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@weave-md/basic

Reference implementation of Weave Markdown - CLI, renderer, and exporter

latest
Source
npmnpm
Version
0.5.0
Version published
Weekly downloads
19
35.71%
Maintainers
1
Weekly downloads
 
Created
Source

@weave-md/basic

CLI and exporter for Weave Markdown.

Installation

pnpm add @weave-md/basic

CLI

Export

weave-md-basic export html --entry=intro   # Export to HTML
weave-md-basic export ast                  # Export to JSON AST

HTML entry point: If exactly one .md file exists in the root directory, --entry is auto-detected:

weave-md-basic export html

Output: Use --out to specify output directory:

weave-md-basic export html --out=./build

Validate

weave-md-basic validate              # Check for errors
weave-md-basic validate --strict     # Exit 1 on errors
weave-md-basic validate --json       # JSON output

Help

weave-md-basic help

Programmatic Usage

import { loadWorkspace, exportToStaticHtml, parseToMdast } from '@weave-md/basic';

// Load sections from directory
const { sections, rawContent } = await loadWorkspace('./content');

// Parse to mdast trees
const trees = new Map();
for (const section of sections) {
  const content = rawContent.get(section.id);
  if (content) {
    const { tree } = parseToMdast(content);
    trees.set(section.id, tree);
  }
}

// Export to static HTML
const html = exportToStaticHtml(sections, trees, { title: 'My Document' });

API

loadWorkspace(path, options?)

Load sections from .md files with valid frontmatter. Recursively scans directories and subfolders.

  • options.files - Load specific files only
  • options.extensions - File extensions (default: ['.md'])
  • options.exclude - Directories to skip (default: ['node_modules', '.git'])

Returns { sections, filePaths, rawContent }.

exportToStaticHtml(sections, trees, options?)

Generate a complete HTML document with footnotes and overlay support.

  • options.title - Document title
  • options.entry - Entry section ID (only renders this section and its references)

Display Modes

  • footnote (default) - Numbered references at bottom
  • inline - Expandable content inserted after paragraph
  • overlay - Click to show tooltip preview

Nesting Rules

This renderer enforces the following nesting restrictions:

ContextAllowed Node Links
Main contentfootnote, inline, overlay
Inside footnoteoverlay only
Inside inlineoverlay only
Inside overlaynone (plain text)

Node links inside footnotes and inline content are converted to overlays. Overlays cannot contain further interactive links.

License

MIT

Keywords

weave

FAQs

Package last updated on 08 Feb 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts