Taack-UI est une extension du cadriciel Grails, permettant de décrire l’interface utilisateur et résoudre d’autres problématiques, comme la sécurité, d’une application Web via des DSL (Domain Specific Language ou langage dédié) Groovy statiquement typés.
Ce cadriciel se compose :
- d'une extension au compilateur incluse dans le plugin taack-ui
- d'un plugin Intellij pour la reconnaissance de la syntaxe et l'autocompletion taack-autocomplete
- d'un driver JDBC taack-jdbc-client pour accéder aux objets persistants (voir la page Taack JDBC Driver).
Le cadre offert par cette extension propose de simplifier les fonctionnalités suivantes par rapport à une application Grails classique :
La sécurité
- Modification des objets limitée aux champs modifiables par l’utilisateur ;
- Gestion du masquage des actions (liens et actions des formulaires) accessibles à l’utilisateur à un emplacement unique, et sans code additionnel si utilisation de l’annotation
@Secured
; - Le listage des données seulement accessible à l’utilisateur ;
Le rendu
Les sorties PDF, CSV, et le rendu des mails peuvent partager le meme code, permettant de factoriser celui-ci ;
Rapport d'erreur et interface localisée automatiquement (voir Form DSL)
Le filtrage, pagination et ordre des données dans les tables sans avoir besoin de composer des requêtes, ou d'utiliser une session ;
Autres
-
Le support de Solr pour la recherche textuelle :
- Recherche et indexation textuelle des objets (toujours de façon statiquement typée) ;
- Support de la classification des objets (Faceting en anglais, je ne connais pas de traduction) voir le moteur de recherche du site Taack.org
- Classement (Ranking pour les Anglophones), taper
JDBC
par exemple dans le moteur
Gestion des aperçus de fichiers extensibles (accessible plus tard, la prévisualisation des fichiers STEP en 3D, et DWG .. en plus des formats bureautiques communs, il est également possible d’ajouter des convertisseurs, comme DWG vers PDF)
Driver JDBC, permettant de réaliser des requêtes d’objets via le langage TQL (Taack Query Language) limitant la portée de la requête aux objets autorisés. Utilisable avec DBeaver, Intellij ou LibreOffice Base, comme une base de données classique.
-
Partage de fichier (expérimental) via Sftp :
- Système de fichier virtuel par utilisateur composé par le serveur d’application
- Accès à une partie du système de fichiers réels du serveur pour créer des espaces d’échange rapide ;
Shell (expérimental) via Ssh permettant de définir des interfaces graphiques s’exécutant entièrement sur le serveur (video)
Serveur Git pour la gestion documentaire (principalement les guides utilisateurs) lié aux applications développées.
Nous utilisons en interne cette extension (et donc Grails
, et donc SpringBoot
), aussi bien pour nos sites extérieurs que pour toutes les applications périphériques à notre ERP (qui se trouve être Axelor.).
Le choix de la licence du code est Apache Version 2.
Le site officiel est Taack.org. Il a lui-même été réalisé entièrement via ce cadriciel. Il est encore jeune, la documentation est encore imparfaite et principalement en anglais, nous mettrons à disposition le code source de ce site comme site d’exemple (ça pourrait être un petit CMS sympa).
Nous développons également des extensions pour VS Code et Intellij pour rendre l'édition plus rapide. Clairement, ce cadriciel est très couplé à Intellij Ultimate Edition, nous espérons pouvoir élargir le spectre d'IDE supporté rapidement. VS Code est utilisable pour l'édition, mais les erreurs ne sont pas rapportées.
Les liens :
- Site anglais Taack.org
- Débuter en anglais (la version FR n'est pas satisfaisante, la version EN se basant sur l'ancienne version de l'Intranet n'est pas non plus parfaite)
- Contenu du site sur Github
- Source Infrastructure sur Github infra
- Source Driver JDBC (la qualité du code n’est pas aux standards que nous souhaitons, mais c’est fonctionnel, bien que complexe à appréhender) taack-jdbc-client
- Source Plugin Intellij sur Github taack-autocomplete
Merci de votre attention et bonne année.
# correction
Posté par YBoy360 (site web personnel) . Évalué à 1. Dernière modification le 01 janvier 2023 à 08:36.
Le paragraphe concernant JDBC contient des erreurs, est-il possible de remplacer :
par
Merci
[^] # Re: correction
Posté par gUI (Mastodon) . Évalué à 4. Dernière modification le 01 janvier 2023 à 09:22.
Corrigé, merci
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
# Auto-completion Intellij
Posté par YBoy360 (site web personnel) . Évalué à 1.
Pour info, le plugin Intellij vient d'être validé. Vous pouvez donc l'installer sur cet environnement (si c'est celui que vous décidez d'utiliser) sans avoir à le télécharger sur le site github.
L'avantage de ce mécanisme : les mises à jour se feront automatiquement. Pour l'installer depuis le "Marketplace" (CTRL + ALT + S, puis plugins), il suffit de taper
taack
dans le champ de recherche.Pour les autres IDEs, surtout VS Code, c'est un peu plus compliqué, si quelqu'un a de l'expérience pour nous aider elle serait la bienvenue. C'est important pour les développeurs utilisant
vi
.Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.