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

@g1cloud/entity-modeler-next

v5.2.17

Published

Vue 3 visual entity-modeling / class-diagram editor

Downloads

8,910

Readme

entity-modeler-next

Vue 3 visual entity-modeling / class-diagram editor. Distributed as a library package (@g1cloud/entity-modeler-next) and embedded in bluework4-tool (Nuxt/Vue/Mongo).

Stack

TypeScript · Vue 3 · Vue Flow · Pinia (opt-in) · Vite (library mode) · Vitest · views built on @g1cloud/open-bluesea-core (BS) components

Install

pnpm add @g1cloud/entity-modeler-next

Requires the peer dependencies vue ^3.5.0 and @g1cloud/open-bluesea-core (installed by the host).

Usage

import { EntityModeler } from '@g1cloud/entity-modeler-next'
import '@g1cloud/entity-modeler-next/style.css'  // required — components render unstyled without it

Structure

src/
  core/      logical/layout types (separated) · resolve (consistency) · routing · autolayout · propagation · validation · type catalogs. Framework-agnostic
  command/   Command (do/undo) · CommandStack · op/opSync (semantic op emit + CAS concurrency)
  editor/    reactive controller (composable wrapping CommandStack, EDITOR inject key) + axis modules split out of it
             (commandPlans · clipboardImport · hostSync · selection — each takes a minimal injected context)
  view/      Vue Flow components (DiagramCanvas · EntityNode · GroupNode · AssociationEdge · PropertyPanel · ValidationPanel, etc.)
             plus composables (useAttributeEditing · useResizableWidth · useTreeCollapse) and pure helpers
  adapter/   storage-schema mapping (persisted v1/v2 · fromPersisted/toPersisted/toPersistedV2 round-trip)
  agent/     natural-language → op track (symbolicOp · resolver · schema · buildAgentBatch)
  dev/       demo harness (excluded from the library build)

Core design: layout references the logical model by modelId (one-way). The logical model carries no geo/waypoint/style.

Scripts

pnpm dev            # demo harness dev server (src/dev)
pnpm test           # Vitest (unit)
pnpm test:coverage  # Vitest + v8 coverage report (no threshold — report only)
pnpm typecheck      # vue-tsc --noEmit
pnpm build          # library build (dist/)
pnpm verify         # headless GUI probe suite (scripts/verify-*.mjs) — boots the dev harness once, runs all probes
pnpm verify:floor    # raise the per-probe assertion-count floor to current (never lowers)
pnpm check          # CI gate: test && build

check is the entry point CI calls; verify runs the browser probes and is kept separate because it needs a dev server and takes ~100s.

verify also enforces a per-probe assertion-count floor (scripts/probe-assertion-floor.json): a probe whose executed-assertion total drops below its floor fails even if every remaining assertion passes — deleting an ok() would otherwise shrink the denominator too and pass as 0/0. Adding assertions needs no bookkeeping; only a deliberate reduction requires editing the JSON by hand, and that diff is the review signal.