Nextcloud - Le Dasboard 00/N
Ce billet est le premier d'une potentielle série de billet sur la fonctionnalité Dashboard de Nextcloud, apparue avec la version 20.
Ces billet sont co-écrits par Genma & Brume.
Objectifs de cette série
Présenter la fonctionnalité Dashboard de Nextcloud et la démarche de recherche d'informations, des tutoriels, en vue de pouvoir ajouter des fonctionnalités dans ce Dashoard.
Introduction
Depuis Nextcloud 20, un Dashboard a été intégré à Nextcloud. Il est sur la page d'accueil de l'application et permet en un clin d'oeil d'être au courant des dernières notifications : mails, conversations, derniers fichiers édités... mais également des notifications sur d'autres sites : des intégrations. Il est par exemple possible de voir ses dernières notifications GitHub, Facebook, Mastodon...
Chaque élément sur ce Dashboard est un widget. Notre but ici, est de récolter le plus d'informations possibles à ce sujet, afin d'essayer d'en créer.
Présentation du Dashboard sur le site de Nextcloud : https://nextcloud.com/dashboard/
Documentation de Nextcloud sur le Dashboard, en anglais : https://docs.nextcloud.com/server/20/developer_manual/digging_deeper/dashboard.html
Une application Dashboard ?
Pour commencer, il est important de savoir qu'avant la version 20, il existait déjà un Dashboard, sous forme d'application Nextcloud. Le code de l'application a donc été intégré à Nextcloud, et l'application est devenue obsolète. Nous pouvons donc nous demander si les tutoriels pour cette application sont toujours valables ou non à l'heure actuelle.
Le dépôt de l'application obsolète (archivé) : https://github.com/nextcloud/dashboard
Les technologies utilisées
Nextcloud utilise principalement du PHP et le framework VueJS. Cependant, l'environement de développement est assez poussé, et il ne suffit pas de connaïtre ses deux langages, il est aussi nécessaire de connaitre l'environnement de développement de Nextcloud.
Applications et widgets
Il est nécessaire de créer une application pour créer un widget, le widget n'étant qu'un pont entre l'application et le Dashboard.
Il sera donc pertinent, en plus de se focaliser sur la partie "Widget" pure, d'approfondir (et de partager les connaissances) autour de la création d'une application Nextcloud.
Quelques ressources
Posts du forum pertinents
Vue.js setup for app development : Ce post parle de l'enviromnement Vue.js sur Nextcloud. Il donne un lien intéressant : https://github.com/skjnldsv/vueexample, un exemple d'application Nextcloud en Vue. Il explique que le templace HTML est juste un `div` vide, que Vue va utiliser pour le remplacer par son code. Il liste également tous les fichiers notables de l'application, ce qui serait intéressant de décortiquer.
App development setup Ce post exprime la difficulté d'une personne à mettre en place son setup de développement Nextcloud. Il n'y a pas énormément d'informations qui pourront nous être utiles, mais il reste intéressant. Il y est d'ailleurs mentionné une série de vidéos tutoriel sur Nextcloud, mais elles sont en allemand.
Vidéos pertinentes
Nextcloud App Entwicklung #1 - Entwicklungsumgebung Ces vidéos tutoriel en allemand ont l'air bien, mais malheureusement peu accessibles pour les non germanophones.
[Tech Talk] Create your first Nextcloud-App @ DO !Hack 2017 Conférence en allemand sur la création d'application dans Nextcloud (27 minutes)
Working with Nextcloud's JavaScript APIs - Christoph Wurst Cette vidéo de 4 minutes, en anglais, parle de la toute récente API front-end de Nextcloud.
Fin de ce premier billet d'intégration.