Bonjour — Je cherche un développeur Discourse expérimenté pour m’aider à préparer le lancement de ma plateforme communautaire. L’instance est déjà en ligne et dispose d’un thème personnalisé (core.scss, nav.scss, nav.js), il ne s’agit donc pas d’une construction à partir de zéro, mais plutôt de peaufiner les détails.
Note : les fichiers de thème existants concernent uniquement la couche de design (couleurs, polices, injection de navigation) et non des remplacements de modèles structurels. Aucun modèle Discourse de base n’a été modifié.
Je suis ouvert aux propositions à prix fixe, avec un paiement échelonné par jalons.
Voici ce dont j’ai besoin :
Le thème existant Il existe déjà un thème complet personnalisé avec mode clair/sombre, une navigation personnalisée qui masque l’en-tête par défaut de Discourse, et des couleurs de marque. La navigation doit s’afficher de manière cohérente sur tous les types de pages, y compris le profil des membres, et je besoin de quelqu’un pour auditer et corriger tout ce qui retombe sur les paramètres par défaut de Discourse. Le logo doit également être remplacé (fourni).
Page portail membre Je souhaite une page de profil personnalisée affichant le type de membre (Propriétaire, Membre ou Concessionnaire), son véhicule, un badge de statut vérifié et un sélecteur de langue. Les liens vers les ressources affichés sur la page doivent être conditionnels : par exemple, les propriétaires voient des outils différents des membres potentiels. Je fournirai une maquette interactive complète montrant les états clair et sombre ainsi que toutes les vues par type de membre.
La page doit également comporter un panneau « Comptes connectés » permettant aux membres de s’authentifier via Discord et Facebook OAuth. Après une authentification réussie, leur ID de plateforme et leur nom d’utilisateur sont renvoyés vers Supabase (identifiants et schéma fournis). J’ai déjà configuré les applications OAuth ; je dois simplement intégrer le composant côté Discourse et la logique de rappel de manière propre.
Langue et traduction La communauté est internationale, c’est donc un point crucial. Lorsqu’un membre sélectionne sa langue préférée (anglais, thaï, tchèque, néerlandais, allemand, anglais de Nouvelle-Zélande), toute l’interface Discourse doit basculer : menus, notifications, messages système, tout. Lors de la première visite, détecter son pays via l’adresse IP et lui demander de confirmer. J’ai également besoin que le plugin Discourse Translator soit installé et configuré avec une clé API DeepL (fournie), avec des boutons de traduction par publication actifs et des traductions mises en cache par ID de publication pour réduire les coûts API. Les pages statiques, y compris le portail membre (qui doit également être accessible via les boutons natifs de Discourse), doivent s’afficher dans la langue sélectionnée.
Niveaux de confiance, groupes et intégration Tally La structure des catégories sera en place avant votre démarrage. Ce dont j’ai besoin, c’est d’une configuration correcte des niveaux de confiance et des groupes, afin que les types de membres (Propriétaire, Membre, Concessionnaire) soient attribués lors de l’inscription, que les groupes correspondent aux bonnes permissions de catégorie, et que toute modification soit synchronisée avec Supabase. J’ai également besoin que discourse_user_id et discourse_username soient exposés en tant que paramètres d’URL pour les formulaires Tally intégrés, afin qu’ils puissent être capturés comme champs de préremplissage masqués.
Porte de vérification DVLA La catégorie réservée aux propriétaires doit être protégée par une vérification du véhicule. Lorsqu’un membre non vérifié tente d’y accéder, il voit une invite pour entrer son numéro d’immatriculation. Je construis moi-même le point de terminaison de vérification (Cloud Run, REST — entièrement documenté et fourni), votre périmètre se limitant donc uniquement au composant de thème Discourse : l’écran d’accueil protégé, le formulaire de saisie du VRM, et les états de succès/erreur. J’ai besoin de quelqu’un qui soit à l’aise avec le JavaScript des composants de thème basés sur Ember de Discourse pour cette partie en particulier.
Sujet XCombo Un dernier composant : un seul sujet Discourse servant à la fois de référence et d’espace de discussion pour un jeu de données que je maintiens. Le premier message est épinglé et contient un widget de recherche intégré (filtres en temps réel à partir d’une table Supabase), un bouton « Envoyez-moi la liste complète » (appelle un point de terminaison fourni, Resend envoie un PDF à l’adresse enregistrée du membre) et un lien ancré vers le fil de discussion ouvert ci-dessous. Là encore, la logique de recherche, le point de terminaison et l’intégration Resend sont tous fournis ; vous ne devez connecter que le conteneur côté Discourse. Cela vous donne également une idée du flux complet des membres : portail → lien de ressource → sujet → recherche → email.
Je fournirai tous les actifs, les identifiants, l’accès à Supabase et la documentation lors de l’attribution. Je suis disponible pour en discuter si nécessaire. Veuillez me faire part de votre expérience avec les intégrations OAuth dans Discourse spécifiquement, et si vous avez déjà travaillé avec des composants de thème basés sur Ember.
Merci beaucoup
Édité pour plus de clarté