@principal-ade/argdown-parser-browser
v0.1.0
Published
Browser-compatible Argdown parsing - bundles @argdown/core for client-side use
Maintainers
Readme
@principal-ade/argdown-parser-browser
Browser-compatible Argdown parsing library. Bundles @argdown/core for client-side use.
Features
- Parse Argdown syntax directly in the browser
- Full argument map generation with groups and colors
- Syntax validation
- Metadata extraction
- TypeScript support with full type definitions
Bundle Size
- Minified: ~433 KB
- Gzipped: ~117 KB
Installation
npm install @principal-ade/argdown-parser-browser
# or
bun add @principal-ade/argdown-parser-browserUsage
import { processArgdown, validateArgdown, extractMetadata } from '@principal-ade/argdown-parser-browser';
const argdownText = `
# Climate Debate
[We should act on climate]: We must take immediate action on climate change.
+ <Scientific Consensus>: 97% of climate scientists agree. #science
- <Economic Concerns>: It will cost too much. #economy
`;
// Full parsing with map generation
const result = await processArgdown(argdownText);
console.log(result.response.map); // Map nodes and edges
console.log(result.response.arguments); // Parsed arguments
console.log(result.response.statements); // Parsed statements
// Validation only (faster)
const validation = await validateArgdown(argdownText);
console.log(validation.valid); // true/false
console.log(validation.errors); // Error messages if invalid
// Quick metadata extraction (no parsing)
const metadata = extractMetadata(argdownText);
console.log(metadata.title); // "Climate Debate"
console.log(metadata.tags); // ["science", "economy"]API
processArgdown(source, options?, argdownOptions?)
Full Argdown processing with map generation.
Options:
generateMap(default:true) - Generate map nodes/edgescolorize(default:true) - Apply colors based on tagscolorScheme(default:'colorbrewer-set3') - Color schemecreateGroups(default:true) - Create groups from sections
processArgdownMinimal(source, argdownOptions?)
Minimal parsing without map generation. Faster for validation.
validateArgdown(source)
Validate Argdown syntax. Returns { valid: boolean, errors?: string[] }.
extractMetadata(source)
Extract metadata without full parsing. Returns title, speakers, and tags.
Types
All types are exported for TypeScript users:
import type {
ArgdownResponse,
ArgdownMapData,
ArgdownArgument,
ArgdownStatement,
ArgdownMapNode,
ArgdownMapEdge,
RelationType,
ArgdownTypes,
} from '@principal-ade/argdown-parser-browser';Comparison with @principal-ade/argdown-parser
| Package | Environment | Bundle | Use Case |
|---------|-------------|--------|----------|
| argdown-parser | Node.js only | External deps | Server-side parsing |
| argdown-parser-browser | Browser + Node | Self-contained | Client-side parsing |
Use argdown-parser-browser when you need to parse Argdown in the browser without a server round-trip.
License
MIT
