6.0.0-git
2024-03-28
Last Modified 2018-09-19 by Ralf Lang

New App Design Proposals for H6

This is, at least for now, a list of talking points, not a list of documented decisions or suggestions
This is not about refactoring existing apps with thousands of LOCs but about understanding how to have a modern, lightweight start from scratch for new ideas.

Server side Architecture

Inter-App and External Interfaces

Use horde registry->call API for inter-app, horde-internal calls or use callAppMethod?

Use routes and per-resource/page controllers by default instead of actual paths?
If so, we should provide some example how to go about it

PHP Namespaces

Use php namespaces for new libraries and apps?

PHP versions/features

New apps should be allowed to require php7, even if built against horde5?

UI / ajax / js

Avoid Imple in new apps?

This is something michael once hinted when I tried to figure what imple actually is, how it works

Rich UIs

Use Horde_Ajax_Application and HordeCore.doAction? This is what we currently do. However, At least a few instances of using controllers instead exist

Allow or even suggest some default modern javascript framework/building blocks like React?
Currently, we embrace jquery-mobile for mobile-friendly touch UIs and the very ancient prototypejs for all other UIs.

JS Coding Standards

Horde Coding standards currently include no guidance on how to format or structure js code of horde apps. Adopt some existing guideline?