Skip to content
View ChrisAbner's full-sized avatar

Block or report ChrisAbner

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ChrisAbner/README.md

Hi, I'm Chris Abner 👋

Senior Full-Stack Developer in Cancún, México. I build web products with PHP/Laravel, Vue 3, Inertia.js and AWS, and I contribute fixes to the PHP and Laravel open-source ecosystem.


🔥 Cordon Modulith

Verifiable boundaries between the modules of a Laravel application, checked in CI.

Folders don't stop the Billing module from reaching into Catalog's models. Cordon Modulith parses your code statically (it never loads or runs it), builds the dependency graph between modules and fails the build when a module:

  • uses internal classes of another module instead of its public API,
  • depends on a module it did not declare, or
  • takes part in a dependency cycle.

It works with nwidart/laravel-modules, InterNACHI/modular or a plain app/Modules folder, supports a baseline for existing projects, and also runs as a Pest expectation, a PHPStan rule and a GitHub Action. php artisan cordon:docs generates Mermaid diagrams of the real architecture.

composer require --dev chrisabner/cordon-modulith
php artisan cordon:verify

Tests Latest version

📖 Documentation · 📦 Packagist · 💻 Repository · Status: 0.2 (alpha)

🤝 Open source

Merged pull requests:

🛠️ Also building

  • PromoInvestor: fintech rates comparator for Mexico (Laravel, Laravel Cloud).

🧰 Stack

PHP Laravel Vue.js Inertia.js Tailwind CSS MySQL Redis AWS TypeScript

📊 GitHub stats

Chris's GitHub stats Top languages

📫 Find me

🌐 chrisabner.github.io · 💼 LinkedIn

Pinned Loading

  1. Cordon-Modulith Cordon-Modulith Public

    Cordon off your modules: verifiable boundaries between modules in Laravel applications.

    PHP 1 1