development · Command reference

qzx projectLanguages

What it does

Profiles a project's source languages and supporting formats with line, file, and byte percentages

Canonical command: projectLanguages

Accepted aliases: auditLanguages

Case-sensitive: no

Included in the published package

Available in PyPI 0.2.2.0.2. This page documents the 0.2.2.0.2 alpha development checkout.

Safety and effects

Read-only under the current classification

No documented dry-run parameter

No native program invocation in the current classification

No documented network use

No inherent elevation requirement

This safety classification was reviewed against implementation digest sha256:5fe2603fc2337bacb6ba658ea7027a199c6bd9c373134d05ef3cb6701583aed9 on 2026-07-25.

Exact syntax

qzx projectLanguages [scan_path] --json

Parameters

NameTypeRequiredDefaultDescription
scan_pathstrNo"."Project directory or source file to analyze (defaults to current directory)

Input examples

qzx projectLanguages

Profile languages in the current project

qzx projectLanguages "src/"

Profile languages in the src/ directory

qzx auditLanguages

Use the compatibility alias for the former command name

For the complete structured payload, add --json: qzx projectLanguages [scan_path] --json

Observed output example

Captured with QZX 0.2.2.0.2 on Windows 11; exit code 0. Host-dependent values and duration can vary.

Example command: qzx projectLanguages ../artifacts/qzx-evidence/language-profile --json

{
    "success": true,
    "scan_path": "C:\\Team Dropbox\\Valis Idealis\\Ale\\Programacion\\QZX - Quick Zap Exchange\\artifacts\\qzx-evidence\\language-profile",
    "scan_kind": "directory",
    "scan_complete": true,
    "composition_basis": "source_code_lines",
    "summary": {
        "visited_files": 20,
        "recognized_files": 20,
        "ignored_files": 0,
        "ignored_directories": 0,
        "generated_files": 0,
        "binary_files": 0,
        "unknown_files": 0,
        "oversized_files": 0,
        "symlinks_skipped": 0,
        "analyzed_files": 20,
        "source_language_count": 3,
        "supporting_format_count": 0,
        "total_language_count": 3,
        "primary_language": "PHP",
        "source_files": 20,
        "source_bytes": 380,
        "source_bytes_formatted": "380.00 B",
        "source_code_lines": 20,
        "recognized_bytes": 380,
        "recognized_bytes_formatted": "380.00 B",
        "recognized_total_lines": 20,
        "recognized_code_lines": 20,
        "recognized_comment_lines": 0,
        "recognized_blank_lines": 0
    },
    "languages": [
        {
            "language": "PHP",
            "kind": "programming",
            "aliases": [
                "php",
                "php3",
                "php4",
                "php5"
            ],
            "composition_percentage": 90,
            "file_count": 18,
            "file_percentage": 90,
            "bytes": 342,
            "bytes_formatted": "342.00 B",
            "byte_percentage": 90,
            "total_lines": 18,
            "code_lines": 18,
            "code_percentage": 90,
            "comment_lines": 0,
            "blank_lines": 0,
            "extensions": [
                {
                    "extension": ".php",
                    "file_count": 18
                }
            ],
            "detected_variants": [
                {
                    "name": "PHP",
                    "file_count": 18
                }
            ],
            "example_files": [
                "page-0.php",
                "page-1.php",
                "page-10.php",
                "page-11.php",
                "page-12.php"
            ]
        },
        {
            "language": "CSS",
            "kind": "stylesheet",
            "aliases": [
                "css"
            ],
            "composition_percentage": 5,
            "file_count": 1,
            "file_percentage": 5,
            "bytes": 24,
            "bytes_formatted": "24.00 B",
            "byte_percentage": 6.32,
            "total_lines": 1,
            "code_lines": 1,
            "code_percentage": 5,
            "comment_lines": 0,
            "blank_lines": 0,
            "extensions": [
                {
                    "extension": ".css",
                    "file_count": 1
                }
            ],
            "detected_variants": [
                {
                    "name": "CSS",
                    "file_count": 1
                }
            ],
            "example_files": [
                "style.css"
            ]
        },
        {
            "language": "Python",
            "kind": "programming",
            "aliases": [
                "bazel",
                "py",
                "py3",
                "pyi",
                "python",
                "python3",
                "sage",
                "starlark"
            ],
            "composition_percentage": 5,
            "file_count": 1,
            "file_percentage": 5,
            "bytes": 14,
            "bytes_formatted": "14.00 B",
            "byte_percentage": 3.68,
            "total_lines": 1,
            "code_lines": 1,
            "code_percentage": 5,
            "comment_lines": 0,
            "blank_lines": 0,
            "extensions": [
                {
                    "extension": ".py",
                    "file_count": 1
                }
            ],
            "detected_variants": [
                {
                    "name": "Python",
                    "file_count": 1
                }
            ],
            "example_files": [
                "tool.py"
            ]
        }
    ],
    "supporting_formats": [],
    "exclusions": {
        "respected_ignore_files": [],
        "built_in_directory_names": [
            ".angular",
            ".git",
            ".gradle",
            ".hg",
            ".idea",
            ".mypy_cache",
            ".next",
            ".nox",
            ".nuxt",
            ".pytest_cache",
            ".ruff_cache",
            ".svelte-kit",
            ".svn",
            ".tox",
            ".venv",
            ".vscode",
            "__pycache__",
            "bower_components",
            "build",
            "coverage",
            "dist",
            "env",
            "node_modules",
            "target",
            "vendor",
            "venv"
        ],
        "ignored_files_encountered": 0,
        "ignored_directories_encountered": 0,
        "generated_files": 0,
        "generated_examples": [],
        "binary_files": 0,
        "binary_examples": [],
        "oversized_files": 0,
        "oversized_examples": [],
        "max_file_size_bytes": 5242880,
        "max_file_size_formatted": "5.00 MB",
        "symlinks_skipped": 0
    },
    "unclassified": {
        "file_count": 0,
        "extensions": [],
        "example_files": []
    },
    "scan_errors": [],
    "analysis_engine": {
        "language_detection": "Pygments",
        "language_detection_version": "2.20.0",
        "ignore_matching": "pathspec",
        "ignore_matching_version": "1.1.1",
        "percentage_precision": 2
    },
    "total_files": 20,
    "languages_found": {
        "PHP": 18,
        "CSS": 1,
        "Python": 1
    },
    "message": "QZX Project Languages Profile\n- Scanned path: C:\\Team Dropbox\\Valis Idealis\\Ale\\Programacion\\QZX - Quick Zap Exchange\\artifacts\\qzx-evidence\\language-profile\n- Composition basis: source code lines\n- Analyzed: 20 recognized files, 20 code lines, 380.00 B\n\nSource language composition:\n  - PHP: 90.00% (18 files, 18 code lines)\n  - CSS: 5.00% (1 file, 1 code line)\n  - Python: 5.00% (1 file, 1 code line)\n\nExcluded or unclassified: 0 ignored directories, 0 ignored files, 0 generated files, 0 binary files, 0 oversized files, 0 unknown text files.\nDetection used Pygments for maintained language definitions and pathspec for gitignore-style exclusions.",
    "meta": {
        "command": "projectLanguages",
        "duration_ms": 1576.56,
        "schema_version": 1
    }
}
View the JSON result contract
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "required": [
        "success",
        "message"
    ],
    "properties": {
        "success": {
            "type": "boolean"
        },
        "message": {
            "type": "string"
        },
        "analysis_engine": {
            "type": "object",
            "properties": {
                "language_detection": {
                    "type": "string"
                },
                "language_detection_version": [],
                "ignore_matching": {
                    "type": "string"
                },
                "ignore_matching_version": [],
                "percentage_precision": {
                    "type": "integer"
                }
            },
            "additionalProperties": true
        },
        "composition_basis": [],
        "error": {
            "type": "string"
        },
        "error_code": {
            "type": "string"
        },
        "exclusions": [],
        "languages": [],
        "languages_found": [],
        "missing_dependencies": {
            "type": "array"
        },
        "remediation": {
            "type": "string"
        },
        "scan_complete": [],
        "scan_errors": [],
        "scan_kind": {
            "type": "string"
        },
        "scan_path": [],
        "summary": [],
        "supporting_formats": [],
        "total_files": [],
        "unclassified": []
    },
    "additionalProperties": true
}

Errors and limits

The public contract requires success=false and a descriptive message on failure. This catalog does not yet declare a command-specific error taxonomy; inspect the result and do not invent error codes.

QZX is alpha software. Optional dependencies, permissions, and host capabilities can change the result.

Evidence workflow: captured and digest-validated.

Evidence and provenance

Documentation channel
Development documentation 0.2.2.0.2 · main · sha256:319b16857a87636ebc3b89734cc040a737bb56194464fca33ce73bdae2043096
Availability
0.2.2.0.2 or earlier

Keep exploring

These commands also belong to the development category. Compare them to choose the operation that best fits your task.

Explore all QZX commands