Coder Social home page Coder Social logo

makina-presences's Introduction

Makina Presence

Makina Presence is an app that allow a group of individual to organize the usage of their working space, by giving them a tool that enable each partner to book their future working station.

I. Installation

I. Installation

  • Clone the repository

  • Get the dependencies

npm ci
  • Add your token & table

Create a .env file at the root of the projet, then complete the following lines with your private TOKEN and IDs :

VITE_BASEROW_TOKEN=YOUR_TOKEN_HERE
VITE_TABLE_ID_SPOTS=
VITE_TABLE_ID_PRESENCES=
VITE_TABLE_ID_PLANS=
VITE_FIELD_PRESENCES_DAY=
VITE_FIELD_PRESENCES_PLAN=
  • Start the projet

Run the following command at the root of your project to start your local app, then click the given link to access the website.

npm run dev

makina-presences's People

Contributors

mabhub avatar bo-duke avatar jrmi avatar antoine3312 avatar pacproduct avatar

Stargazers

Sébastien Corbin avatar AL_9000 avatar Edith avatar

Watchers

James Cloos avatar  avatar

makina-presences's Issues

[UX] Position des boutons + et -

Suggestion pour le placement des boutons + et - (vraiment qu'une suggestion)

  • mettre le + à la suite des trigrammes
    image

  • mettre le - à l'intérieur du trigramme, comme pour les labels
    image

2 semaines, c'est pas assez

Très concrètement:

  1. je le remplis consciencieusement,
  2. et puis deux semaines passent,
  3. quelqu'un nous rappelle à l'ordre et nous demande de le remplir une semaine après,
  4. retour à l'étape 1

Voilà, c'est à dire qu'en fait, mes jours de présence ne changent pas. Et du coup, je ne suis pas inscrit une semaine sur trois.

Certains diront que c'est de la mauvaise volonté, et moi je réponds, peut être, mais très pragmatiquement ça va continuer comme ça pour toujours on si ne nous permet pas de nous inscrire plus longtemps à l'avance.

Trop d'outillage tue l'outillage, à un moment il faut être rationnel et faciliter la vie des utilisateurs.

Duplications possibles des trigrammes

En jouant avec la casse, il est possible de faire apparaître son trigramme plusieurs fois.

Comment reproduire le problème :

  • S'identifier en tant que "abc", et s'inscrire sur un poste. "abc" apparaît dorénavant sur ce poste.
  • S'identifier en tant que "ABC" : il est possible de s'inscrire sur un autre poste sans que la première occurrence ne soit retirée. De plus, comme les trigrammes sont forcés en minuscules à l'affichage, on ne voit pas de différence entre les 2 occurrences (sauf dans le menu de login en haut à droite) :
    image

Inscription au parking

Trouver une solution pour réserver facilement une place de parking disponible en même temps que notre place de bureau

Créer une mécanique de "data provider"

Une fonction de data provider ("à la react-admin") permettrait d'extraire la logique spécifique à Baserow du hook usePresences() dans un connecteur dédié.

Ainsi on pourrait brancher plus facilement une instance de l'outil à une autre API que celle de Baserow sans intervention directe sur le code métier.

Permettre la surbrillance d'un trigramme

Dans la v1, changer de trigramme (en cliquant dessus) permettait de le mettre en évidence et donc de réparer plus facilement les jours où il était inscrit.

Dans la v2, le changement de trigramme ne se fait plus au clic pour limiter les risque d'erreur de saisie. Par contre on a perdu par la même occasion la possibilité de highlight, de mettre en surbrillance un trigramme pour mieux voir les jours où il est inscrit.

Peut être pourrait-on avoir un mécanisme de surbrillance au survol d'un trigramme (sans pour autant changer le trigramme "de saisie").

Amélioration UX Mobile

La carte n'est pas très utilisable sur mobile, voir pour trouver une meilleure solution. (n'afficher que soit la liste soit la carte par exemple en s'appuyant sur la fonctionnalité de favoris pour simplifier l'inscription)

Affichage des jours précédents

Permettre la personnalisation de l'affichage des jours précédents.

Possibilités envisageables si l'affichage des jours est désactivé :

  • Cacher complétement les jours précédents et afficher à la place un bouton discret pour les afficher temporairement
  • Simplement réduire leur affichage (juste la date et le bouton +, pas les trigrammes) et les agrandir si on clique dessus. L'affichage des jours suivants reste inchangé.

Afficher des informations complémentaires

Deux besoins :

  • Du texte libre associé à un plan, petit encart markdown par ex (peut contenir les infos sur comment venir aux locaux, les codes etc., peut être combiné avec la légende)
  • Markeur qui n'est pas un emplacement : avec juste une tooltip et de l'info mais ne peut pas être réservé (à voir dans les évolutions si on permet une "réservation" des éléments qui ne sont pas emplacements)

Ajouter des jours favoris

Pour faciliter l'inscription des télétravailleurs réguliers, permettre d'ajouter des jours favoris. Les autres jours seraient ainsi "cachés" / moins proéminents.

Une solution serait l'affichage replié du ticket #46 pour les jours non favoris.

Permettre l'inscription par demi-journée

Permettre l'inscription soit sur le matin, soit sur l'après-midi à un emplacement

Gérer le cas de s'inscrire une matinée à un emplacement, un après-midi à un autre

Pouvoir s'inscrire l'après-midi à un emplacement réservé le matin

Alerte écriture concurrente

Actuellement si on s'inscrit a une place déjà prise, on garde les deux inscriptions en erreur.

Voir pour afficher une erreur à la place

ajouter un bureau pour l'agence de nantes

il y a un bureau (mobilier) occupé qui n'est pas encore représenté. n'hésite pas à venir vers moi pour que je détaille (sinon je mettrai un copie d'écran sur ce ticket !
benoit

Inscrire quelqu'un d'autre

Surtout pertinent quand #50 sera implémenté.

Permettre de réserver un emplacement pour quelqu'un autre (collègue, visiteur, stagiaire etc.)

Jours non-travaillés personnalisés

Actuellement on affiche les jours feriés français et on empêche de s'inscrire dessus.

Ça pourrait être intéressant d'avoir une liste des jours non-travaillés par agence et de les gérer de la même manière.

On peut par exemple imaginer une fermeture des locaux pour travaux, bloquer l'inscription directement dans l'outil permet de s'assurer que le message est bien passé.

À voir aussi pour afficher un "commentaire" sur un jour sans que ce soit bloquant pour l'inscription, mais il ne faut pas que l'outil devienne un deuxième calendrier qu'il faut alimenter manuellement.

[UX] Occuper toute la largeur de l'écran

Sur grand écran, il y a de la place à gauche et à droite, et pour ce type d'application, c'est pas perturbant si elle occuppe tout l'écran.

Et on pourrait réfléchir à mettre la légende à droite.

Filtrer les *records* recupéré en fonction du timestamp

Baserow ne permet pas pour le moment d'utiliser un filtre de date avant/après pour la requête de récupération des records.

La solution en attendant est de faire un simple filtre numérique sur une colonne timestamp (à ajouter via #2).

Ne pas modifier la saisie du champ "Trigramme" lors de la mise en HL d'un autre trigramme dans le calendrier

Lorsqu'on clique sur un trigramme dans le calendrier, ce trigramme est mis en surbrillance dans le calendrier et c'est très bien pour connaitre ses disponibilités à l'agence.

Ce clique modifie également la saisie du Trigramme dans le champ "Trigramme" or cette fonctionnalité n'est peut-être pas si pertinente que cela car:

1/ La démarche de mettre en surbrillance n'est pas la même que de se définir en tant que cette personne
2/ Cette modification n'est pas suffisament claire à l'utilisateur pour savoir que son trigramme a été changé avant de saisir de nouvelles dates en son nom.

Le déplacement de la map déclenche quand même l'inscription à une place

Lorsqu'on maintient le clic de souris sur la carte, cela permet de déplacer le plan 👍

Mais si cette action est démarrée en cliquant sur une place réservable par mégarde, une fois le déplacement terminé au relâchement de la souris, la dite place se fait réserver involontairement.


Capture.PresencesNext.-.bug.deplacement.carte.mp4

Missing readme

Missing readme, how can I know how to install and test locally the project ?

Agence favorite ?

Garder le choix de l'agence favorite dans le local storage pour skip l'accueil ?

Faire ça en opt-in, par défaut même comportement, si on choisit une agence dans les paramètres alors on skip l'accueil

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.