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

@antelopejs/dms-database

v0.4.4

Published

Database console for the AntelopeJS DMS: schemas, relation diagrams, a data browser and an AQL query console.

Readme

@antelopejs/dms-database

See your schemas, browse and fix rows, and run queries, from the dashboard your team already uses.

Try it in the live demo · Documentation · All modules

What it does

  • Checks the connection and its latency, with one card per registered schema and the largest tables.
  • Lists every table the loaded modules register, with its columns, indexes, relations and a sample row.
  • Draws the tables and relations of a schema, with a layout and notes shared by the whole team.
  • Browses and fixes rows in any instance: edits are staged, reviewed, saved, and can be undone for ten seconds.
  • Runs AQL queries with completion and history, and a dry run before any query that writes.

A saved row shows in place; the page is read again when a save may move rows (a sorted or filtered field, or a search).

The pages and the module's API answer to the platform owner only.

Install

Run the AntelopeJS CLI from the root of a project that already loads @antelopejs/dms:

ajs project modules add @antelopejs/dms-database

Quick start

The module works without configuration. To show the database name on the Overview and label your schemas, add a config block:

// antelope.config.ts
"dms-database": {
  source: { type: "package", package: "@antelopejs/dms-database", version: ">=0.2.0 <1.0.0" },
  config: {
    driverLabel: "MongoDB 8.0",
    schemaLabels: {
      "app-*": { label: "Application", color: "info" },
    },
  },
},

Restart the backend, then the frontend, sign in as the platform owner and open Modules → Database (/modules/database/overview).

Compatibility

| Package | Supported | Tested with | | ------------------------------------------- | ----------------- | ----------- | | @antelopejs/interface-api | >=0.3.0 <1.0.0 | 0.3.0 | | @antelopejs/interface-api-util | >=0.3.0 <1.0.0 | 0.3.0 | | @antelopejs/interface-core | >=0.4.0 <1.0.0 | 0.4.0 | | @antelopejs/interface-database | >=0.3.1 <1.0.0 | 0.3.1 | | @antelopejs/interface-database-decorators | >=0.2.1 <1.0.0 | 0.2.1 | | @antelopejs/interface-dms | >=0.12.0 <1.0.0 | 0.12.0 | | @antelopejs/interface-dms-automation | >=0.6.1 <1.0.0 | 0.6.1 |

The module also needs a DMS backend in a release that implements the @antelopejs/interface-dms range above, and the @antelopejs/dms-frontend renderer in the range its frontend module declares in engines["@antelopejs/dms-frontend"] of frontend-vue/package.json; the ajs dms CLI refuses to build it with a renderer outside that range, and an @antelopejs/interface-database implementation, such as @antelopejs/mongodb.

Documentation

The canonical guide lives in docs/, including the supported extension boundary. There is no separate DMS Database interface package. The package also ships the dms-database Claude Code skill in skills/, declared under antelopeJs.skills.

Contributing

Read CONTRIBUTING.md before opening a pull request. The playground registers a demo schema and a shop schema with eu and us instances, seeded on first start. It runs on MongoDB by default; set PLAYGROUND_DATABASE=postgres to run it on PostgreSQL through @antelopejs/postgres, with POSTGRES_URL naming the database (default postgres://postgres@localhost:5432/playground_dms_database, which must exist).

One root install includes the backend and shipped Vue module, retaining their separate lockfiles. The playground remains independent: run pnpm --dir playground install --ignore-workspace --frozen-lockfile before starting it. Use the root scripts below rather than recursive scripts: frontend build and typecheck need the playground or a generated Inertia workspace, and root lint already checks the Vue module.

pnpm install
pnpm dev            # playground backend
pnpm frontend:dev   # dashboard, in a second terminal
pnpm lint
pnpm typecheck
pnpm test
  • The module registers its Vue 3 frontend through frontend-vue/dms.frontend.ts, under the DmsDatabase component prefix: app/components/DataBrowser.vue is the DmsDatabaseDataBrowser the backend page names. The pages are declared in src/pages, as DMS blocks plus the module's own components. Everything under frontend-vue/app/build is private to the layer and imported by path.
  • Run pnpm test:layer for the frontend tests and pnpm test:frontend to build and typecheck a generated Inertia app. Set DMS_FRONTEND_WORKSPACE to a generated Inertia workspace before running pnpm --dir frontend-vue typecheck.
  • DMS_SOURCE=/absolute/path/to/dms pnpm test tests against a local DMS runtime with disposable MongoDB and filesystem storage. Only the test harness loads that runtime; the types come from @antelopejs/interface-dms.
  • docs/design/redesign-v2-grill.md records the decisions behind the v2 redesign.

Part of AntelopeJS DMS

This module installs into AntelopeJS DMS, the open-source back office. Every module adds its pages to the same dashboard, behind the same sign-in and roles.

| Module | What it adds | | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | | dms-builder | Edit pages, tables and data sources by clicking, as TypeScript that compiles | | dms-ai | An assistant chat in the dashboard, on your own Claude Code or Codex | | dms-database | Schemas, relation diagrams, a data browser and a query console | | dms-api | API health, request logs, per-route statistics and a request tester | | dms-automation | Node-graph automations on schedules, webhooks and DMS events, with a trace for every run | | dms-mailing | E-mail templates in a block editor, versions, a send log and delivery metrics | | dms-lang | Translation coverage, a translation matrix and a translation queue | | dms-media | A media library with folders, per-folder permissions, image sizes and light editing | | dms-saas | Self-service sign-up, plans that gate features, and Stripe billing | | dms-marketing | Traffic, conversion funnels with A/B splits and click heatmaps, without cookies | | dms-frontend | The ajs dms CLI, the Vue renderer and the SDK every frontend module builds on |

License

Apache-2.0