npm package
Overview
mouaif is published to the public npm registry as the package mouaif, which exposes a command of the same name. Installing the package is the supported way to run the app anywhere Node.js is available; npx mouaif serve runs it without a global install.
Usage
Run the app straight from the registry, without installing it:
npx mouaif serve --auth
Install the command globally:
npm install -g mouaif
mouaif serve --auth
Pin an exact version (quote the argument so the shell does not read @ as a glob):
npx --yes --package "mouaif@0.3.0" mouaif info
Publish a release
From a clean checkout, as a maintainer:
npm login
npm version patch # or minor / major
npm publish
npm publish runs prepublishOnly before uploading: the lint pass, the frontend build, the documentation build, and the npm-name guard. The name guard asks the registry whether mouaif is still free and aborts the publish if it now belongs to a different repository.
Behavior
Public access.
publishConfigpinshttps://registry.npmjs.org/andaccess: public, so a developer-level registry override cannot send the release to another registry.Pre-built UI. Every tarball ships
frontend/dist/, sonpx mouaifand a global install never run a frontend build.scripts/prepare-web.jsbuilds the UI only in a source checkout.Native dependencies.
better-sqlite3and@napi-rs/keyringship prebuilt binaries for common platforms; where none exists, Node compiles them during install, so the first install can take a few minutes.postinstallpatch. The install runsscripts/patch-zimmerframe.js, which is why that single script file stays in the tarball.Semantic versions only.
versionmust be a fullX.Y.Z; the registry rejects the two-part form with a 400.
Related
CLI commands — every
mouaifcommand andserveoption.Getting started — install, run, and first setup.