noticer is a tool for managing small messages that you want developers of a repo to see.
Notices are stored in the repository, and developers only see unseen notices.
It's useful for telling developers things like:
- "We changed the Dockerfiles, you'll need to rebuild them."
- "We added a new library, check it out at
packages/cool-new-thing." - "The platform team released a new admin tool, you can see it at http://platform.ecorp.com/admin"
It's designed to be really easy to use and setup in your repository.
Since you're already using node, there's no point requiring all your developers to install a bundled copy of it.
npm install -D @zdavison/noticer
# or
pnpm add -D @zdavison/noticer
# or
bun add -D @zdavison/noticercurl -fsSL https://raw.githubusercontent.com/zdavison/noticer/main/install.sh | shThis downloads a standalone executable - no Node.js required.
For Node.js projects (using your package manager):
npx noticer init
npx noticer createBy default, noticer installs itself into your postinstall script.
However, if you'd like to show notices some other way (e.g. a git hook), just call pnpm noticer show wherever you'd like to trigger it.
- One command setup (
noticer init). - Developers only see notices once.
- Fresh clones will only see the latest notice (not the entire history).
- Interactive notice creation with live preview.
- Command execution: Include commands in notices that users can execute interactively.
You can include commands in your notices that users will be prompted to execute when they view the notice. This is useful for automating setup tasks or running necessary commands.
To include a command in a notice, prefix it with !>:
pnpm noticer create "We updated the database schema!
Please run the migration:
!> npm run migrate
And then restart your dev server:
!> npm run dev"
When users run noticer show, they'll see the notice and be prompted to execute each command:
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 📝 Team Lead ┃
┃ July 30, 2025 ┃
┃ ┃
┃ We updated the database schema! ┃
┃ ┃
┃ Please run the migration: ┃
┃ !> npm run migrate ┃
┃ ┃
┃ And then restart your dev server: ┃
┃ !> npm run dev ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
? Execute command: npm run migrate? (y/N)
Users can choose to execute or skip each command. Commands are executed in the repository's root directory.
noticer attempts to re-open /dev/tty when stdin is not a TTY.
If you run noticer during git hooks, this will be the case.
This is done in order to allow interactivity (e.g. when using !> command execution).
However this may not work in some environments, in that case, you can use --auto-execute to automatically prompt yes to !> command executions.
noticer was developed at MeetsMore and then open sourced.