Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Concord Laravel Package

konekt/concord

Laravel extension for building modular applications using conventions on top of service providers. Manage in-app and external modules with isolation-friendly structure, version compatibility across Laravel releases, and tooling around module registration and organization.

View on GitHub
Deep Wiki
Context7

Prologue

If you're not interested in the story and philosophy behind, skip directly to the next section: Overview »

Main Goals

  • Provide a platform on top of Laravel for extensible business applications.
  • Establish the foundation for layered applications.
  • Provide a system for using/creating a plugin-like modular architecture.
  • Have a system that can embrace decoupled modules, so that we can get rid of duplications across projects.
  • Establish a framework where specific modules can be customized, or even replaced.
  • Standardize usage of Eloquent models and so that they can easily be extended/customized in final applications.

Main Considerations

  • Laravel 5.5+
  • Follow Laravel's standards and practices.
  • Don't duplicate functionality that exists in Laravel
  • Keep the developer's liberty so that it's not a nightmare to implement/customize things.
  • Avoid over-engineering.
  • Accept ActiveRecord, instead of fight against.

Inspirations

Who Is It For?

Concord adds some features and therefore additional complexity to the Laravel Framework. So think twice if you really need it.

Concord is not for you if

most of these apply to you:

  • "I'm writing one simple application."
  • "I have no need of code reuse in multiple applications."
  • "My code is organized enough."
  • "I know how to write my stuff, and I'm OK with it."
  • "The amount I'm copypasting is fine."
  • "Applications I develop have not too much in common."
  • "I prefer to complete tasks as quickly as possible."

Concord is for you if

most of these apply to you:

  • "I need reusable business functionality."
  • "I'm fed up with writing the same stuff over and over again."
  • "My code organization isn't always consistent."
  • "I often think about where to put a class."
  • "Sometimes I look for code design advice on the net, but everything turns out to be relative."
  • "Sometimes I'd be happy to have some guides on code organization and design."
  • "I rather spend some extra time now for creating good foundations."
  • "Clean code is not about aesthetics but about robust systems."

One of the main reasons I gave Concord birth for was my need for Reusable Business Functionality. In most of the cases there's no need for that.

Recommended reading: 10 Modern Software Over-Engineering Mistakes.

OK, you've been warned :)

Next: Overview »

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4