Skip to content

Feature/public readiness#3

Merged
yss-ef merged 3 commits intomainfrom
feature/public-readiness
May 1, 2026
Merged

Feature/public readiness#3
yss-ef merged 3 commits intomainfrom
feature/public-readiness

Conversation

@yss-ef
Copy link
Copy Markdown
Owner

@yss-ef yss-ef commented May 1, 2026

Overview

This PR prepares devctl for its initial public release. It focuses on transforming the tool from a local script into a robust, professional-grade CLI by improving verification, reliability, and accessibility.

Key Changes

  • Robust Verification Suite:

    • Implemented 11 comprehensive unit tests using pytest and CliRunner.
    • Added a directory scanner test suite with mocked file structures to verify environment detection logic.
    • Added command validation tests to ensure edge cases (e.g., unsupported databases) are handled gracefully.
  • System Dependency Management:

    • Introduced a new dependencies utility to verify the presence of required system binaries (docker, npm, java, ng) before execution.
    • Replaced unhandled Python stack traces with user-friendly error messages and installation hints.
  • Internationalization & Visual Polish:

    • Translated all CLI output messages from French to English for a global audience.
    • Applied a consistent color-coding scheme using Typer (Green for success, Red for errors, Cyan for info, Yellow for warnings).
  • Demonstration Assets:

    • Added a samples/ directory containing pre-generated Spring Boot and Angular architectures to showcase the tool's output without requiring local installation.
  • CI/CD Pipeline:

    • Configured GitHub Actions to automatically run the test suite across Python 3.9, 3.10, 3.11, and 3.12 on every push/PR.

Verification Results

  • Local Tests: 11/11 tests passed.
  • Dependency Checks: Manually verified that missing tools trigger the new hint based error system.
  • Linting: All files verified against project standards.

Authored by Youssef Fellah.

@yss-ef yss-ef merged commit 8a2db8f into main May 1, 2026
2 of 6 checks passed
@yss-ef yss-ef deleted the feature/public-readiness branch May 1, 2026 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant