Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: Configuration Language Lock 1.0.2 Minor update available for module config_language_lock (1.0.2). Release: Canvas Override 1.0.1 Minor update available for module canvas_override (1.0.1). Release: Media Remote Image 8.x-1.2 Minor update available for module media_entity_remote_image (8.x-1.2). Release: IDNA Convert Service (punycode) 2.0.4 Minor update available for module idna (2.0.4). Release: Bootstrap Cloud 7.1.3 Minor update available for theme bootstrap_cloud (7.1.3). Release: Token Browser 1.0.2 Minor update available for module token_browser (1.0.2). Release: Varbase Project 11.0.8 Minor update available for module varbase_project (11.0.8). Release: Media Remote Image 2.0.0-beta1 First beta version released for module media_entity_remote_image (2.0.0-beta1). Usage Milestone: Term CSV Export Import Module term_csv_export_import crossed 1,000 active installs. Security Coverage: Module Scout Module module_scout now has official Drupal security advisory coverage.

Changelogify

1 sites Security covered Drupal 10–11
View on drupal.org

Changelogify automatically tracks changes made on your Drupal site, such as content updates or module installations. It then groups these events into categorized releases and publishes them as a public changelog, providing a transparent record of site evolution.

Turn Drupal site activity into trustworthy release notes

Changelogify captures the site changes you choose to track and turns them into structured, reviewable release notes. It gives editors an evidence-backed workflow for explaining what changed without rebuilding the story from logs, tickets, or memory.

The core module is deterministic and does not require an external service. Editors preview the available evidence, decide what belongs in a release, create an unpublished draft, refine the wording, and publish only when it is ready.

Why keep a changelog?

A changelog is more than a record of updates. It is a communication tool that helps people understand how a site is evolving and why that work matters.

  • Build trust and transparency: Show clients, users, and stakeholders that the site is actively maintained and that meaningful work is being delivered.
  • Help people discover improvements: Make new features, fixes, and refinements visible instead of letting them disappear into deployments and internal tickets.
  • Align teams and clients: Give product, engineering, design, support, and client teams a shared account of what actually shipped.
  • Create a searchable history: Preserve when changes happened so maintainers and users do not have to reconstruct the past from memory.
  • Showcase craft and quality: Communicate the steady fixes, accessibility work, security maintenance, and polish that are easy to overlook.
  • Reduce avoidable support questions: Explain intentional changes before users mistake them for defects or missing functionality.

How it works

  1. Capture: Record opted-in content, module, user-role, and supported configuration changes.
  2. Review: Explore captured events and preview the exact change sets available for a release window.
  3. Draft: Include, exclude, or reassign changes and create an unpublished release organized into Added, Changed, Fixed, Removed, Security, and Other.
  4. Publish: Edit and review the release, then publish it to a themeable public changelog when approved.

Generated changelog preview

The project screenshot above shows an unpublished generated release inside the Drupal administration interface. Editors can review the Added and Changed notes before changing editorial state or publishing.

Key features

  • Configurable event capture: Track selected content bundles, module operations, user-role changes, and supported configuration changes with privacy-aware defaults.
  • Evidence preview: Review bounded candidate change sets before creating a release, with include, exclude, reassignment, date-window, and coverage controls.
  • Editorial workflow: Manage Draft, Ready for review, Published, and Archived releases with revisions, permissions, scheduled publication, and rollback-aware operations.
  • Public changelog: Publish accessible, cacheable, themeable release lists and detail pages at a configurable path, using stable readable URLs.
  • Multiple delivery formats: Provide HTML pages, RSS, Atom, and a read-only JSON API for published releases.
  • Multilingual releases: Translate release content and use configurable language fallback behavior.
  • Event explorer and retention: Filter captured evidence, inspect defensively redacted details, and apply bounded retention through Drupal cron.
  • Durable provenance: Preserve the relationship between release notes, change sets, and their source events for editorial review.

Optional evidence-backed AI drafting

The included changelogify_ai submodule adds bring-your-own-provider drafting through the Drupal AI module. Editors review the site-eligible boundary, privacy policy, redactions, and exclusions before anything is sent to a provider.

Changelogify 1.8 can synthesize the reviewed evidence into a concise set of categorized, cited summary notes in one provider request. It does not use batching, queue workers, or cron for provider calls, and it never publishes AI output automatically. Every successful result opens as one unpublished draft for human review. Provider quality, cost, availability, and data-processing terms remain the site operator's responsibility.

Good fits

  • Agencies: Produce clear maintenance and delivery reports for clients.
  • Product teams: Keep customers informed about improvements, fixes, and releases.
  • Intranets and platforms: Maintain an internal history of operational and content changes.
  • Governed sites: Preserve reviewable evidence and editorial provenance behind published release notes.

Getting started

  1. Install the current stable release with composer require 'drupal/changelogify:^1.8' and enable Changelogify.
  2. Open Content → Changelogify, or use the established dashboard URL at /admin/config/development/changelogify.
  3. Review tracking, privacy, retention, public-path, and release defaults under Settings. Published content and module tracking are enabled by default; unpublished-content and user tracking are opt-in.
  4. Allow activity to accumulate, select Generate release, preview the evidence, and create an unpublished draft.
  5. Edit and approve the draft, then publish it. Grant view changelogify releases to the intended roles if the changelog should be publicly accessible.

Requirements

  • Drupal core ^10.3 || ^11
  • PHP 8.1 or newer, subject to the installed Drupal core version's PHP requirements
  • Core modules: Content Translation, Language, Node, Options, and User
  • No external service is required for deterministic core release generation

Optional AI submodule: Drupal core ^10.5 || ^11.2, Drupal AI ^1.4, and a separately configured compatible chat provider.

Security and privacy

Administrative event metadata may contain titles, paths, usernames, role assignments, and technical configuration names when their sources are enabled. Restrict Changelogify administration permissions, choose an appropriate retention policy, review unpublished release text before publication, and review the outbound payload preview before using an external AI provider.

Project resources

Depends on

Dependencies of the latest stable release

  • content_translation Drupal core
  • language Drupal core
  • node Drupal core
  • options Drupal core
  • user Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
10
Tracked since
Mar 2026
Latest release
1 week ago
Releases (12 mo)
10 ▲ from 0
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
1.8.1 Stable 10–11 Aug 29, 2026
1.8.0 Stable 10–11 Aug 29, 2026
1.7.0 Stable 10–11 Aug 26, 2026
1.6.0 Stable 10–11 Aug 24, 2026
1.5.0 Stable 10–11 Aug 24, 2026
1.4.0 Stable 10–11 Aug 24, 2026
1.3.0 Stable 10–11 Aug 24, 2026
1.3.0-beta1 Pre-release 10–11 Aug 16, 2026
1.2.0 Stable 10–11 Mar 13, 2026
1.2.x-dev Dev 10–11 Mar 12, 2026