npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

eventmodeler

v0.4.1

Published

CLI tool for interacting with Event Model files - query, update, and export event models from the terminal

Readme

eventmodeler

CLI tool for interacting with Event Model files. Query, update, and export event models from the terminal.

Works with .eventmodel files created by the Event Modeling App.

Installation

npm install -g eventmodeler

Quick Start

# Open Event Modeling app in browser
eventmodeler

# List all slices
eventmodeler list slices

# Show details of a slice
eventmodeler show slice "Place Order"

# Search for elements
eventmodeler search "order"

# Get JSON output instead of XML
eventmodeler list slices --format json

Commands

List Commands

eventmodeler list slices              # List all slices with status
eventmodeler list events              # List all events
eventmodeler list commands            # List all commands
eventmodeler list chapters            # List all chapters
eventmodeler list aggregates          # List all aggregates
eventmodeler list actors              # List all actors

Show Commands

eventmodeler show slice <name>        # Show detailed view of a slice
eventmodeler show event <name>        # Show detailed view of an event
eventmodeler show command <name>      # Show detailed view of a command
eventmodeler show chapter <name>      # Show chapter with its slices
eventmodeler show actor <name>        # Show actor with its screens

Completeness Commands

eventmodeler show completeness <name>       # Show field mapping completeness for any element
eventmodeler show model-completeness        # Show completeness of all flows in the model
eventmodeler show aggregate-completeness <name>  # Check if events have the aggregate ID field

Search

eventmodeler search <term>            # Search for entities by name

Modify Commands

# Mark slice status
eventmodeler mark "Place Order" done
eventmodeler mark "Cancel Order" in-progress

# Add scenario to a slice
eventmodeler add scenario --slice "Place Order" --json '{"name": "Happy path", ...}'

# Add field to an entity
eventmodeler add field --event "OrderPlaced" --json '{"name": "orderId", "type": "UUID"}'

# Remove field
eventmodeler remove field --event "OrderPlaced" --field "legacyId"

# Update field properties
eventmodeler update field --read-model "OrderSummary" --field "notes" --optional true

# Map fields between elements
eventmodeler map fields --flow "OrderPlaced→OrderSummary" --json '[{"from": "total", "to": "totalAmount"}]'

Export

eventmodeler summary                  # Show model summary statistics
eventmodeler export json              # Export entire model as JSON

Output Format

By default, output is in XML format (optimized for AI agents). Use --format json for JSON output:

eventmodeler list slices --format json
eventmodeler show slice "Place Order" --format json

Setting Default Format

Set your preferred default format via:

Environment variable:

export EVENTMODELER_FORMAT=json

Config file (~/.eventmodeler/config.json):

{
  "format": "json"
}

Priority: CLI flag > environment variable > config file > default (xml)

Options

-f, --file <path>       Path to .eventmodel file (default: auto-detect)
--format <xml|json>     Output format (default: xml)
-h, --help              Show help message
-v, --version           Show version number

Use Cases

For AI Agents

The CLI is designed to work well with AI coding assistants. The XML output format provides structured, readable data that AI agents can easily parse and understand:

eventmodeler show slice "Place Order"

For Code Generators

Use JSON output to build code generators that read your event model:

eventmodeler list events --format json | your-codegen-tool
eventmodeler show slice "Place Order" --format json

For CI/CD

Check model completeness in your pipeline:

eventmodeler show model-completeness --format json

Requirements

  • Node.js >= 18.0.0
  • A .eventmodel file in the current directory (or specify with -f)

License

MIT

Links