Kunstmaan - presentatie_tech

Kunstmaan - presentatie_tech

The more technical revision of the Kunstmaan bundles presentation.

35617c1bde6460e06755ffada7d55ee8?s=128

Bart Van den Brande

August 18, 2015
Tweet

Transcript

  1. 4.

    Why Kunstmaan bundles? • We needed a new solution for

    our clients • Fast to build, fast to run (~150ms), fl exible • Easy to set up, easy to maintain • Less own code to maintain to fi ght the not invented here syndrome • Standard base to simplify maintenance and to DRY • No longer getting up at all hours because some site had an out-of-memory exception
  2. 5.

    Zend Framework • ZF1 was old • ZF2 was suffering

    of Perpetual Alpha Release Syndrome • First stable version about 1 year after we needed a solution Symfony 2 • Pretty new but very good • Lots of support Play! framework • Fast • Lightweight • Developer friendly workfl ow • No built in, nor third party localisation options available
  3. 6.

    Why we chose Symfony 1. Flexible yet stable 2. It

    should work out of the box 3. Multilingual 4. Versioning 5. Proven technology: mysql, php, symfony 2, doctrine ORM 6. Ability to add 3rd party packages
  4. 7.

    A three tier solution • We started with the Symfony

    standard edition • We used as much community bundles as possible • KnpMenu, Liip imagine, Pagerfanta, FOS User Bundle, CMF Routing, … • If it’s great, use it (community works) • Add cms functionality, admin interface and example frontend through our own bundles
  5. 9.
  6. 10.

    • Belgium • Netherlands • France • Australia • Canada

    • Czech Republic • New Zealand • Equador • Germany • Tunisia • Lithuania • Austria • Bulgaria • Poland • Belarus • Ukraine • UK • ... We built it, who is using it?
  7. 12.

    Requirements • Basic web stack • Composer • Symfony requirements

    • Npm (frontend requirements) OSX LINUX WINDOWS (thanks to contributors)
  8. 13.

    Dev tools • Behat and Unit test •  Generatorbundle •

    Gulp out of the box but not required • Front end style guide • Carefully chosen custom events
  9. 14.

    Kunstmaan generators • Doing the same things over and over…

    • Optimize our workfl ow • Very fl exible: generate and adapt if needed
  10. 15.

    Installing the Kunstmaan bundles Create frontend assets composer create-project kunstmaan/bundles-standard-edition

    demo app/console kuma:generate:bundle app/console kuma:generate:default-site --demosite app/console doctrine:database:create app/console doctrine:schema:create app/console doctrine:fixtures:load bundle install npm install bower install gulp build app/console assets:install —symlink app/console assetic:dump
  11. 17.

    Media library • Consistent media manager • Bulk management •

    Drag and drop support • Update your media in one place • Images • Files • Video • Slides
  12. 18.

    Generating pages and pageparts • Just entities •  Very easy

    to generate •  Different kinds • Auto generated behat tests
  13. 19.

    Managing pages • Overview in tree • Powerfull fi ltering

    • Easy add different types (sub)pages • Drag and drop to re-arrange pages
  14. 21.

    Editing a page • Page types • Page type templates

    • Template regions • Region pageparts • ACL’s for permissions • Versioning • SEO • Social media management
  15. 23.
  16. 27.

    What’s next? • Community is important • Speed things up

    even more • Increase number of tests • Further document our workfl ow • Try to increase contributions futher • Expose api’s • Decouple sub bundles