Socket
Book a DemoInstallSign in
Socket

@pagopa/dx-cli

Package Overview
Dependencies
Maintainers
4
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pagopa/dx-cli

A CLI useful to manage DX tools.

latest
Source
npmnpm
Version
0.9.0
Version published
Maintainers
4
Created
Source

@pagopa/dx-cli

PagoPA logo

DX CLI

A CLI tool for managing DevEx (Developer Experience) guidelines and best practices 🚀

📖 Overview

The DX CLI is a command-line tool designed to help developers manage and validate their development setup according to PagoPA's DevEx guidelines. It provides automated checks and validations to ensure repositories follow the established best practices and conventions.

✨ Features

  • Repository Validation: Verify repository setup against DevEx guidelines
  • Monorepo Script Checking: Validate that required scripts are present in package.json
  • Developer Experience Optimization: Ensure consistent development practices across projects

🚀 Installation

[!NOTE] The CLI is currently only available locally and is not yet distributed through package managers.

From Source (Development)

# Clone the repository
git clone https://github.com/pagopa/dx.git
cd dx

# Install dependencies
yarn install

# Build the CLI
yarn build

# Run the CLI
node ./apps/cli/bin/index.js --help

🛠️ Usage

Available Commands

doctor

Verify the repository setup according to the DevEx guidelines.

dx doctor

This command will:

  • Check if you're in a valid Git repository
  • Validate that required monorepo scripts are present in package.json
  • Check that the turbo.json file exists
  • Verify that the installed turbo version meets the minimum requirements

Example output:

$ dx doctor
Checking monorepo scripts...
✅ Monorepo scripts are correctly set up

savemoney

Analyze Azure subscriptions to identify unused or underutilized resources that could be costing you money.

dx savemoney [options]

Options:

OptionAliasDescriptionDefault
--config-cPath to a JSON configuration file.N/A
--format-fReport format (table, json, detailed-json).table
--days-dMetric analysis period in days.30
--location-lPreferred Azure location for resources.italynorth
--verbose-vEnable verbose mode with detailed logging for each resource analyzed.false

Example usage:

# Analyze with default settings (interactive prompts)
dx savemoney

# Use a configuration file
dx savemoney --config config.json

# Output as JSON with verbose logging
dx savemoney --format json --verbose

# Analyze with specific timespan
dx savemoney --days 60 --location italynorth

Configuration file example (config.json):

{
  "tenantId": "your-tenant-id",
  "subscriptionIds": ["subscription-1", "subscription-2"],
  "preferredLocation": "italynorth",
  "timespanDays": 30
}

Analyzed Azure resources:

  • Virtual Machines: Deallocated or stopped VMs, low CPU usage
  • Managed Disks: Unattached disks
  • Network Interfaces: Unattached NICs
  • Public IP Addresses: Unassociated static IPs
  • Storage Accounts: Low transaction counts
  • App Service Plans: Empty plans or oversized tiers
  • Private Endpoints: Unused or misconfigured endpoints

[!NOTE] Currently only Azure is supported. Support for additional cloud providers (AWS) is planned for future releases.

Global Options

  • --version, -V: Display version number
  • --help, -h: Display help information

Made with ❤️ by the PagoPA DevEx Team

Keywords

DX

FAQs

Package last updated on 11 Nov 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts