Swiss-knife tool for managing multi-environment projects or projects with an extensions monorepo

:tada: Release Announcement

We’re excited to announce the release of directus-helper, a powerful TUI tool designed to make working with Directus easier, more consistent, and more efficient.

What is directus-helper?

Directus Helper is a command-line TUI utility designed to simplify the development workflow around Directus projects. It helps you manage multi-environment configurations, streamline migrations, organize monorepos with many extensions, and automate common development tasks such as building or watching extensions.

Whether you’re working with multiple Directus instances (dev/stage/prod), maintaining a large repository, or simply want an easier way to sync configuration between environments, Directus Helper provides a consistent and developer-friendly toolset.

Key Features

  • Stores and manages Directus environment credentials (tokens or login/password).
  • Supports configuration migration across environments (fields, flows, permissions, etc.).
  • Recognizes Directus monorepo projects and automates building and managing extensions.
  • Provides tools for developing extensions with automatic rebuild and project scaffolding.

Install

npm install -g directus-helper

How does it work?

After you install and run the helper for the first time, a new configuration file is created:

  • macOS: ~/Library/Preferences/directus-helper-nodejs/.settings.json
  • Windows: %APPDATA%\directus-helper-nodejs\Config
  • Linux: ~/.config/directus-helper-nodejs (or $XDG_CONFIG_HOME/directus-helper-nodejs )

This configuration file stores:

  • Environment tokens or credentials
  • Migration settings
  • Global helper preferences
5 Likes

Hi @sawinjer - thanks for the awesome submission!

I just had a chance to try this out and test a migration between two environments successfully. It looks like the default behaviour is to only migrate schema, is that correct? Are there additional settings that can be configured for migrating flows, users, permissions etc.?

Hello, it’s not a part of the current logic, but I’m planning to add it as a feature.
Also, because Directus doesn’t have a built-in logic to support migration of flows, permissions, roles …etc, it means that at some point the helper can be out of sync with directus

Looking forward to trying to play with the integration of Directus Sync | Directus Sync as well

The tool was originally born as a solution for managing monorepos of extensions with the Directus Cloud repositories approach, and only then did I add it as a nice touch for local development expirience