Skip to content

Releases: devkitshq/notifkit

Release list

v0.1.8

Choose a tag to compare

@coo1estguy coo1estguy released this 15 Sep 17:45

Available on npm:

What changed

  • Migrated the admin dashboard from Next.js to a Vite SPA with React Router.
  • Built the UI with official shadcn/ui components using standard dark and neutral CSS variables.
  • Embedded static hosting for the dashboard in the API server at /admin, with dev proxy support for local frontend development.
  • Added session-based authentication and scrypt password hashing for dashboard access.
  • Added the notifkit-create-admin CLI command (scripts/create-admin.mjs) to create and update admin users in PostgreSQL.
  • Updated /v1/system/metrics and system health handlers to support unassigned project scoping.
  • Included the prebuilt dashboard assets and admin CLI in the published npm package.

v0.1.7

Choose a tag to compare

@coo1estguy coo1estguy released this 12 Sep 18:34

Available on npm:

What changed

  • client.addUser(id, contacts, options): addUser now accepts the user ID first, followed by a contacts array and profile options. The previous object signature (addUser({ id, ... })) still works.
  • Added client.identify() as an alias for addUser().
  • Added support for a contacts array across AddUserSchema, UpdateUserSchema, and inline notification targets. You can now pass contacts for any supported channel (email, sms, push, webhook, in-app, telegram, discord, whatsapp, slack) along with label, isPrimary, and per-contact preferences.
  • Added client.addContacts(userId, contacts) for adding multiple contacts in one call.
  • The POST /v1/users/:id/contacts endpoint now accepts either a single contact object or an array of contacts.
  • Fixed unencoded URL parameters in client.ts (deleteContact, getUserContacts, etc.) so targets containing + (like email aliases) or / (like webhook URLs) no longer break route matching.
  • Replaced loose any return types across NotifkitClient methods with typed response interfaces (UserResponse, UserContactResponse, UserDetailResponse, WorkflowDefinitionRecord, and others).
  • Updated the MCP server's upsert_user and update_user tools to accept the contacts array.