studieren-ohne-grenzen / dashboard

Simple dashboard for different management tasks, works on our LDAP tree
MIT License
1 stars 0 forks source link

Choose a PHP Framework #2

Closed leomelzer closed 9 years ago

leomelzer commented 9 years ago

Our Requirements: A micro framework following MVC which supports basic abstraction and some templating

Options:

  1. http://lumen.laravel.com/
  2. http://silex.sensiolabs.org/
  3. http://www.slimframework.com/
sleidig commented 9 years ago

Another option may be writing it as a Drupal Module? That would at least provide user permissions out of the box. Probably also some templating (I've just worked with Drupal 8, so I don't know exactly) Could be done for Drupal 7 and integrated into the CiviCRM Drupal installation - or as a Drupal 6 module into OA.

Might not be worth the effort to deal with Drupal, just adding it to be considered.

effi commented 9 years ago

Big Laravel fan myself, very lightweight and powerful. Probably the nicest/cleanest php framework I've seen so far, doesn't feel like the typical meh php-framework

On Tue, May 5, 2015 at 10:09 PM, Leonhard Melzer notifications@github.com wrote:

Our Requirements: A micro framework following MVC which supports basic abstraction and some templating Options:

  1. http://lumen.laravel.com/
  2. http://silex.sensiolabs.org/

3. http://www.slimframework.com/

Reply to this email directly or view it on GitHub: https://github.com/studieren-ohne-grenzen/dashboard/issues/2

leomelzer commented 9 years ago

@sebastian-leidig: @faboschert and I discussed this briefly. To which Drupal installation would this be a module to? We have two installations: OA with Drupal 6 and CiviCRM with Drupal 7 (you mentioned that's what we now run on the new server). The Dashboard isn't really related to either of those, I think it sits above the two, and if so, it's rather related to OA. Then the problem would be the old Drupal 6 API which I don't think is worth developing for. Did I miss something here? We initially found the idea worthwhile (Login System, API, Documentation etc), too. Stills seems like an option, but we would couple the Dashboard to the Drupal installation. Other option is to use one of the aforementioned micro frameworks and make it more stand-alone. To avoid reinventing the wheel we could use existing modules such as the LDAP login wrapper for Laravel etc.

sleidig commented 9 years ago

absoutely agree: We shouldn't put any work into Drupal 6 stuff. I don't see us changing CiviCRM away from Drupal 7 however. Therefore the Dashboard (even though it logically doesn't belong to Civi) could piggyback on the Civi Drupal 7 installation (UI facing the users could still be completely unrelated to Civi)

faboschert commented 9 years ago

I'm still undecided. Trying to sum up the advantages of each option I find: pro stand-alone:

pro Module:

leomelzer commented 9 years ago

After further consideration, I'll cast my vote for Silex

  1. Great documentation, up to date PDF or online: http://silex.sensiolabs.org/documentation
  2. Twig for sane templating
  3. Support for standard components like SwiftMailer, Monolog
  4. Built on Symfony2, they know what they are doing
  5. Seems well-tested https://travis-ci.org/silexphp/Silex
  6. Actively developed yet stable: http://silex.sensiolabs.org/doc/changelog.html
  7. Relevant packages: https://packagist.org/search/?q=silex

Lumen is very nice, used it a couple of weeks on a different project. It carries a lot of cruft which we don't actually need, though. I do like the look of Slim (it really is Slim) but it's in between major releases (v2 vs v3) and it doesn't seem to have any relevant advantages over Silex. It seems more performant, but we won't have to handle 2000 concurrent connections anyways...

So: :+1: for Silex.

faboschert commented 9 years ago

You summed up the benefits of Silex very well and I totally agree with you. Silex is well suited for this project. I also had a look at some other frameworks like https://kohanaframework.org, http://fatfreeframework.com and http://www.codeigniter.com/ but I didn't see an advantage over Silex for any of them.

Also: :+1: for Silex.

leomelzer commented 9 years ago

Just had a brief look at these contestants, CodeIgniter also looks nice but I feel Silex is in the sweet spot of some but yet not too much weight.

So we'll roll ith Silex! I'll setup a base application.