Le design de Paheko est basé sur plusieurs concepts :

  • Simplicité : les fonctionnalités doivent être le plus simple possible à utiliser par les utilisateurs finaux
  • Intuitivité : il ne doit pas y avoir besoin de lire 200 pages de manuel pour comprendre comment ça marche, tout doit être clair et expliqué dans l'interface elle-même
  • Flexibilité : Paheko doit pouvoir convenir à l'utilisation de 95% des petites et moyennes associations
  • Puissance : Paheko doit permettre une utilisation avancée, qui peut être apprise progressivement, mais pas au détriment de la simplicité
  • Intuitivité : l'utilisation doit pouvoir être apprise sans lire préalablement une documentation, toutes les informations utiles et nécessaires doivent être comprises dans l'interface elle-même

Au niveau du développement nous suivons les principes suivants :

  • Eco-conception : le code doit être léger en ressources serveur et client, réduisant la consommation énergétique du matériel utilisé (voir notamment Eco-conception web car la plupart des sites web sont inutilement lents)
  • Artisanat : Paheko est construit comme un projet artisanal, avec l'amour du travail bien fait, mais aussi le plaisir de coder et de créer de nouvelles choses.
  • Amélioration progressive : le Javascript ne doit pas être nécessaire
  • Sécurité : faire en sorte que la conception et l'utilisation soit la plus sécurisée possible.

C'est pour cela nous utilisons peu d'outils existants : pas de framework PHP ou CSS. Nous utilisons en général les outils KD2 qui suivent les même principes. Ces briques logicielles sont réutilisables et éprouvées.

Comme Paheko est un projet artisanal et non pas industriel, il ne fait pas sens pour nous d'utiliser un framework lourd (comme Laravel ou Symfony), d'autant plus que leur durée de support ne convient pas au cycle de développement de Paheko. L'idée n'est pas d'utiliser des outils génériques qui ne sont pas adaptés à nos besoins, mais de trouver ou développer les solutions les plus adaptées, les plus légères, et les plus durables.

Ces choix se retrouvent au niveau de l'interface visuelle :

  • Nous n'utilisons pas de bibliothèque lourde populaire comme React, Bootstrap, etc. ces projets sont très bien mais lents et lourds et n'apportent rien dont nous n'ayons besoin ;
  • Les champs de formulaire ne sont pas stylisés, ils utilisent le style natif du navigateur, afin de rendre évident ce qu'ils sont et ce qu'ils font ;
  • Nous n'utilisons pas de design à la mode tel que "Material Design" ou autre car ces designs passent très vite de mode et ne sont pas étudiés pour une utilisabilité maximale et sont peu accessibles aux handicaps.