spatie / blender

The Laravel template used for our CMS like projects
https://freek.dev/on-open-sourcing-blender
877 stars 148 forks source link

Adding core functionality and making it available to your clients #361

Closed ttomdewit closed 7 years ago

ttomdewit commented 7 years ago

Dear Spatie team,

First of all thank you for all the work you do for the open-source community.

I'm currently looking at options for a homegrown CMS and so far we've decided to use Laravel as our base.

At first I was looking at creating a package that house all of our routes, views, migrations etc. Then I looked at Blender and decided to take a look and install it locally.

My question is as follows: how do you enhance your core system and upgrade your clients to allow them to use the latest functionality? Since it's a Laravel installation I guess all of your clients have their own repository and run a single installation each and every time. I'm wondering how you'd add functionality to Blender's core and have your clients use said functionality.

Thank you for taking the time to read/answer my question and possibly follow-up questions.

Tom

freekmurze commented 7 years ago

Hi Tom,

Since it's a Laravel installation I guess all of your clients have their own repository and run a single installation each and every time.

That's correct. After Blender has been copied to a project specific repo they aren't linked in any way, they are separate codebases. So if we add something to Blender, this change doesn't appear automatically in the project specific repo.

In practice this works great, we can mold the code in the project specific repo to anything we want. Sure, bug fixes in the core of Blender don't get applied automatically to the project repo's, but in all honesty there aren't too many bugs in there. Most logic lives in packages anyway. In the project specific repo's we get pull in all bugfixes to the packages by simply running composer update.

Does this answer your question?

ttomdewit commented 7 years ago

Hi Freek,

Thank you very much for your quick reply.

but in all honesty there aren't too many bugs in there

That makes it a ton easier to work with, I guess. And in a way makes sense. Is it for this exact reason you keep Blender to an absolute minimum and create packages on a per-project basis (after which you open-source them)?

freekmurze commented 7 years ago

Is it for this exact reason you keep Blender to an absolute minimum and create packages on a per-project basis (after which you open-source them)?

More or less, yes.

ttomdewit commented 7 years ago

Thank you, @freekmurze, for getting back to me. I'll close this issue for now and use this as a reference in my ongoing research.