{"users":[{"id":32,"username":"codinghorror","name":"Jeff Atwood","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/codinghorror/{size}/110067_2.png","admin":true,"trust_level":2},{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/moin/{size}/554653_2.png","trust_level":3},{"id":115923,"username":"Discourse","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/discourse/{size}/148734_2.png","admin":true,"trust_level":4},{"id":82960,"username":"manuel","name":"Manuel Kostka","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/manuel/{size}/468169_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":4},{"id":119375,"username":"elmuerte","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/elmuerte/{size}/456517_2.png","trust_level":2},{"id":23968,"username":"david","name":"David Taylor","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/david/{size}/157490_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":187793,"username":"AkarinLiu","name":"AkarinLiu","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/akarinliu/{size}/539577_2.png","trust_level":1},{"id":406,"username":"RGJ","name":"Richard - Communiteq","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/rgj/{size}/523185_2.png","flair_name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_group_id":142,"trust_level":4},{"id":94920,"username":"cocococosti","name":"Constanza Abarca","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cocococosti/{size}/231474_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":2},{"id":150621,"username":"尔德_王","name":"尔德 王","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/尔德_王/{size}/423343_2.png","trust_level":2},{"id":21029,"username":"pmusaraj","name":"Penar Musaraj","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pmusaraj/{size}/119489_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":173987,"username":"cuo_wu","name":"James","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cuo_wu/{size}/498442_2.png","trust_level":2},{"id":111125,"username":"typed-sigterm","name":"Typed SIGTERM","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/typed-sigterm/{size}/504463_2.png","trust_level":2},{"id":190268,"username":"sk-or-v1-contents","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sk-or-v1-contents/{size}/547175_2.png","trust_level":2},{"id":27384,"username":"merefield","name":"Robert","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/merefield/{size}/176214_2.png","trust_level":3},{"id":2770,"username":"awesomerobot","name":"Kris","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/awesomerobot/{size}/142900_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":71988,"username":"pmcpa","name":"pmcpa","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/p/8797f3/{size}.png","trust_level":0},{"id":83716,"username":"stuwest","name":"Stu West","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/stuwest/{size}/192400_2.png","trust_level":2},{"id":127856,"username":"Lilly","name":"Lillian ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/lilly/{size}/555832_2.png","trust_level":3},{"id":185831,"username":"sniper756","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sniper756/{size}/545002_2.png","trust_level":3},{"id":13426,"username":"mcmcclur","name":"Mark McClure","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mcmcclur/{size}/115456_2.png","trust_level":2},{"id":22295,"username":"Silvanus","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/silvanus/{size}/62831_2.png","trust_level":2},{"id":119529,"username":"kyle315a","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/a587f6/{size}.png","trust_level":0},{"id":174704,"username":"Diego_Rivera_Buendia","name":"Diego Rivera Buendia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/diego_rivera_buendia/{size}/500083_2.png","trust_level":0},{"id":189191,"username":"nitinkg","name":"Nitin Gupta","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/n/eb8c5e/{size}.png","trust_level":1},{"id":20734,"username":"jamesarobbo","name":"James Robinson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jamesarobbo/{size}/121843_2.png","trust_level":1},{"id":1995,"username":"zogstrip","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/zogstrip/{size}/512781_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":2},{"id":98059,"username":"marcosbc","name":"Marcos Bjoerkelund","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/marcosbc/{size}/222119_2.png","trust_level":1},{"id":24424,"username":"Eric_Keller","name":"Eric Keller","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eric_keller/{size}/517693_2.png","trust_level":2},{"id":98939,"username":"isaac","name":"Isaac Janzen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/isaac/{size}/235758_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":2},{"id":-1,"username":"system","name":"system","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/system/{size}/443519_2.png","admin":true,"moderator":true,"trust_level":4},{"id":160471,"username":"Ethsim2","name":"Ethan ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ethsim2/{size}/522255_2.png","flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"trust_level":1},{"id":117390,"username":"dmke","name":"Dominik Menke","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dmke/{size}/264041_2.png","trust_level":1},{"id":135392,"username":"NateDhaliwal","name":"Nate Dhaliwal","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/natedhaliwal/{size}/313494_2.png","flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"trust_level":3},{"id":35474,"username":"Canapin","name":"Coin-coin le Canapin","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/canapin/{size}/119591_2.png","trust_level":3},{"id":60726,"username":"jrgong","name":"jrgong","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/j/c57346/{size}.png","trust_level":2},{"id":161351,"username":"BrianC","name":"Brian","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/brianc/{size}/487568_2.png","trust_level":2},{"id":15442,"username":"jericson","name":"Jon Ericson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jericson/{size}/116215_2.png","flair_name":"support-explorers","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/d/1/b/d1ba0acf09b9d01f87f9e05bbee1dc5b0e316d5f.png","flair_bg_color":"dddddd","flair_color":"111111","flair_group_id":118,"trust_level":2},{"id":113000,"username":"chapoi","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/chapoi/{size}/537252_2.png","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":113325,"username":"piffy","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/piffy/{size}/254198_2.png","trust_level":2},{"id":22917,"username":"klappradla","name":"Max","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/klappradla/{size}/531604_2.png","trust_level":2},{"id":15209,"username":"pfaffman","name":"Jay Pfaffman","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pfaffman/{size}/120154_2.png","flair_name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_group_id":142,"trust_level":4},{"id":173218,"username":"gilles","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gilles/{size}/549022_2.png","trust_level":3},{"id":13378,"username":"angus","name":"Angus McLeod","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/angus/{size}/341715_2.png","flair_name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_group_id":142,"trust_level":4},{"id":5795,"username":"mattdm","name":"Matthew Miller","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mattdm/{size}/216484_2.png","trust_level":2},{"id":113094,"username":"agungor","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/agungor/{size}/260344_2.png","trust_level":2},{"id":154549,"username":"irregular","name":"sac","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/i/f9ae1b/{size}.png","trust_level":2},{"id":191326,"username":"Mohamed_Ahmed2","name":"Mohamed Ahmed","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mohamed_ahmed2/{size}/485262_2.png","trust_level":0},{"id":114728,"username":"darkpixlz","name":"Pyx ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/darkpixlz/{size}/549896_2.png","primary_group_name":"VolunteerMods","flair_name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_group_id":276,"trust_level":4},{"id":31176,"username":"Bar_Smith","name":"Bar Smith","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/bar_smith/{size}/92338_2.png","trust_level":1},{"id":83597,"username":"Gandharv_Bakshi","name":"Gandharv Bakshi","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gandharv_bakshi/{size}/192102_2.png","trust_level":1},{"id":189822,"username":"remidm","name":"Rémi Delaporte-Mathurin","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/remidm/{size}/546042_2.png","trust_level":1},{"id":3,"username":"supermathie","name":"Michael Brown","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/supermathie/{size}/507518_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":26605,"username":"LeoDavidson","name":"Leo Davidson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/leodavidson/{size}/119574_2.png","trust_level":2},{"id":191275,"username":"hanoith2022","name":"Hanoiopt","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/hanoith2022/{size}/549908_2.png","trust_level":1},{"id":1,"username":"sam","name":"Sam Saffron","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sam/{size}/102149_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":181081,"username":"stephtara","name":"Stephanie Booth","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/stephtara/{size}/517827_2.png","trust_level":3}],"primary_groups":[{"id":47,"name":"team"},{"id":276,"name":"VolunteerMods"}],"flair_groups":[{"id":47,"name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111"},{"id":142,"name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_color":""},{"id":73,"name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111"},{"id":118,"name":"support-explorers","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/d/1/b/d1ba0acf09b9d01f87f9e05bbee1dc5b0e316d5f.png","flair_bg_color":"dddddd","flair_color":"111111"},{"id":276,"name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_bg_color":"","flair_color":""}],"topic_list":{"can_create_topic":false,"more_topics_url":"/c/dev/7?page=1","per_page":30,"top_tags":[{"id":330,"name":"api-rest","slug":"rest-api"},{"id":436,"name":"css","slug":"css"},{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"},{"id":328,"name":"api-de-plugin","slug":"plugin-api"},{"id":543,"name":"ia","slug":"ai"},{"id":317,"name":"discussion","slug":"chat"},{"id":556,"name":"en-tête-de-marque","slug":"brand-header"},{"id":483,"name":"barre-latérale","slug":"sidebar"},{"id":150,"name":"inst-dev","slug":"dev-install"},{"id":35,"name":"mobile","slug":"mobile"},{"id":466,"name":"console-rails","slug":"rails-console"},{"id":5,"name":"installation-non-prise-en","slug":"unsupported-install"},{"id":107,"name":"webhooks","slug":"webhooks"},{"id":660,"name":"compteur-de-clics","slug":"click-counter"},{"id":22,"name":"compositeur","slug":"composer"},{"id":70,"name":"braise","slug":"ember"},{"id":478,"name":"comment-faire","slug":"how-to"},{"id":198,"name":"abonnements","slug":"subscriptions"},{"id":529,"name":"étiquettes","slug":"tags"},{"id":563,"name":"lien-bandeau-bienvenue","slug":"welcome-link-banner"},{"id":551,"name":"liens-personnalisés-en-tê","slug":"custom-header-links"},{"id":278,"name":"développement","slug":"development"},{"id":24,"name":"docker","slug":"docker"},{"id":39,"name":"courriel","slug":"email"},{"id":618,"name":"champs-personnalisu00e9s-","slug":"user-custom-fields"},{"id":2,"name":"badges","slug":"badges"},{"id":241,"name":"calendrier-et-événement","slug":"calendar-and-events"},{"id":126,"name":"explorateur-de-données","slug":"data-explorer"},{"id":31,"name":"boîte-unique","slug":"onebox"},{"id":87,"name":"publicité","slug":"advertising"},{"id":43,"name":"incorporation","slug":"embedding"}],"topics":[{"fancy_title":"Convention de préfixe de commit GitHub pour Discourse","fancy_title_localized":true,"locale":"en","id":19392,"title":"Discourse GitHub commit prefix convention","slug":"discourse-github-commit-prefix-convention","posts_count":2,"reply_count":1,"highest_post_number":11,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05.png","created_at":"2014-08-28T21:32:16.635Z","last_posted_at":"2026-01-10T21:37:02.376Z","bumped":true,"bumped_at":"2026-01-10T21:37:02.376Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"Pour ceux qui souhaitent apporter des modifications au code de Discourse, nous exigeons que chaque *commit* GitHub ait l'un des préfixes suivants :\n\n| Préfixe | Définition |\n| :--- | :--- |\n| FIX | Une correction de bogue [1] |\n| PERF | Une amélioration des performances |\n| UX | Une amélioration de l'expérience utilisateur... |","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":773,"height":204,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05.png"},{"max_width":600,"max_height":600,"width":600,"height":158,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_600x158.png"},{"max_width":400,"max_height":400,"width":400,"height":105,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_400x105.png"},{"max_width":300,"max_height":300,"width":300,"height":79,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_300x79.png"},{"max_width":200,"max_height":200,"width":200,"height":52,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_200x52.png"}],"tags":[],"tags_descriptions":{},"views":13221,"like_count":56,"has_summary":false,"last_poster_username":"Moin","category_id":7,"op_like_count":53,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquired whether 'I18N' should be added to Discourse’s required commit prefix list, following the initial announcement of standardized prefixes for code contributions.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":32,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"À propos de la catégorie Dev","fancy_title_localized":true,"locale":"en","id":1026,"title":"About the Development category","slug":"about-the-development-category","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":null,"created_at":"2013-02-06T08:43:41.559Z","last_posted_at":"2013-02-06T08:43:41.601Z","bumped":true,"bumped_at":"2023-08-09T13:19:55.222Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"La catégorie pour tout ce qui concerne le développement de Discourse. Vous créez une personnalisation pour vous-même ou pour la communauté ? Alors c'est la catégorie qu'il vous faut ! En savoir plus…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":10716,"like_count":5,"has_summary":false,"last_poster_username":"Discourse","category_id":7,"op_like_count":5,"pinned_globally":false,"featured_link":null,"ai_topic_gist":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Créateur du sujet, Auteur le plus récent","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Rendez-vous open source","fancy_title_localized":true,"locale":"en","id":404923,"title":"Open-Source Hangout","slug":"open-source-hangout","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://us1.discourse-cdn.com/meta2026bsbx/original/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda.jpeg","created_at":"2026-06-16T12:11:33.622Z","last_posted_at":"2026-06-16T12:11:33.722Z","bumped":true,"bumped_at":"2026-06-16T12:11:33.722Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":640,"height":428,"url":"https://us1.discourse-cdn.com/meta2026bsbx/original/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda.jpeg"},{"max_width":600,"max_height":600,"width":600,"height":401,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_600x401.jpeg"},{"max_width":400,"max_height":400,"width":400,"height":267,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_400x267.jpeg"},{"max_width":300,"max_height":300,"width":300,"height":200,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_300x200.jpeg"},{"max_width":200,"max_height":200,"width":200,"height":133,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_200x133.jpeg"}],"tags":[],"tags_descriptions":{},"views":3,"like_count":0,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The developer hangout event is scheduled for June 16, 2026, from 17:00 to 18:00 Atlantic/Canary time, held via Google Meet, recurring every four weeks with a 15-minute notification reminder.","event_starts_at":"2026-07-14T16:00:00.000Z","event_ends_at":"2026-07-14T17:00:00.000Z","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Créateur du sujet, Auteur le plus récent","user_id":82960,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Échec de l&rsquo;action GitHub : étape « Check SKIP_DB_AND_REDIS bootability »","fancy_title_localized":true,"locale":"en","id":404152,"title":"Github actions failing \"Check SKIP_DB_AND_REDIS bootability\" step","slug":"github-actions-failing-check-skip-db-and-redis-bootability-step","posts_count":6,"reply_count":4,"highest_post_number":9,"image_url":null,"created_at":"2026-05-31T11:10:59.628Z","last_posted_at":"2026-06-09T20:26:54.493Z","bumped":true,"bumped_at":"2026-06-09T20:26:54.493Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"J'ai rencontré un problème où l'étape récemment ajoutée « Vérifier la bootabilité de SKIP_DB_AND_REDIS » a échoué pour l'un de mes plugins.\n\nLe démarrage de SKIP_DB_AND_REDIS a échoué. Assurez-vous que la base de données n'est pas consultée pendant le processus de démarrage de Rails…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":77,"like_count":8,"has_summary":false,"last_poster_username":"elmuerte","category_id":7,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user discovered that local reproduction of the bootability failure requires explicitly referencing the plugin controller class, indicating that the local environment does not fully load plugin code during the boot check as GitHub Actions does.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":119375,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Reconstruire le script d&rsquo;importation de Flarum vers Discourse en utilisant l&rsquo;IA LLM","fancy_title_localized":true,"locale":"zh_CN","id":404732,"title":"利用 AI LLM 重构 Flarum 导入脚本以迁移至 Discourse","slug":"ai-llm-flarum-discourse","posts_count":2,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2026-06-08T07:12:28.673Z","last_posted_at":"2026-06-08T20:07:55.382Z","bumped":true,"bumped_at":"2026-06-09T05:10:35.517Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Pour faciliter la migration vers Discourse, j'ai connecté l'API officielle de DeepSeek à Visual Studio Code et réécrit le script d'importation de Flarum en utilisant un modèle de langage (LLM) d'IA. Le script a été testé et est fonctionnel.\nLien Gist : https://gist.github.com/AkarinLiu/4dae346b2f100dff2bc197d95579826b","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":95,"like_count":5,"has_summary":false,"last_poster_username":"cocococosti","category_id":7,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"AkarinLiu shared a Discourse import script for Flarum, refactored using DeepSeek's API, which has been tested and confirmed to work. Cocococosti thanked the contributor and expressed interest in learning more about the migration process.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":187793,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":406,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"Auteur le plus récent","user_id":94920,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Connectez Discourse au Mini Programme WeChat","fancy_title_localized":true,"locale":"en","id":312085,"title":"Connect Discourse to WeChat Mini Program","slug":"connect-discourse-to-wechat-mini-program","posts_count":13,"reply_count":8,"highest_post_number":16,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_1024x554.jpeg","created_at":"2024-06-14T11:32:00.997Z","last_posted_at":"2026-06-06T15:16:08.841Z","bumped":true,"bumped_at":"2026-06-06T15:16:08.841Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Il existe un outil de messagerie instantanée en Chine appelé WeChat. Il dispose d'une fonction appelée (Mini Program), qui est en fait un navigateur intégré. Si Discourse peut être ajouté au Mini Program, ce sera une excellente opportunité pour…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1920,"height":1040,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22.jpeg"},{"max_width":1024,"max_height":1024,"width":1024,"height":554,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_1024x554.jpeg"},{"max_width":800,"max_height":800,"width":800,"height":433,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_800x433.jpeg"},{"max_width":600,"max_height":600,"width":600,"height":325,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_600x325.jpeg"},{"max_width":400,"max_height":400,"width":400,"height":216,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_400x216.jpeg"},{"max_width":300,"max_height":300,"width":300,"height":162,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_300x162.jpeg"},{"max_width":200,"max_height":200,"width":200,"height":108,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_200x108.jpeg"}],"tags":[],"tags_descriptions":{},"views":447,"like_count":14,"has_summary":false,"last_poster_username":"sk-or-v1-contents","category_id":7,"op_like_count":4,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Participants discuss technical hurdles for integrating Discourse into WeChat Mini Programs, highlighting content moderation API requirements, login complications, and the strategic value of embedding the forum within the app for Chinese users.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":150621,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":21029,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":173987,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":111125,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":190268,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Présentation d&rsquo;un nouveau système de construction JS pour le cœur de Discourse","fancy_title_localized":true,"locale":"en","id":403908,"title":"Introducing a new JS build system for Discourse core","slug":"introducing-a-new-js-build-system-for-discourse-core","posts_count":2,"reply_count":1,"highest_post_number":4,"image_url":null,"created_at":"2026-05-29T10:12:41.174Z","last_posted_at":"2026-05-29T10:22:26.385Z","bumped":true,"bumped_at":"2026-05-29T10:22:26.385Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Suite à la modernisation réussie des systèmes de construction du thème et des plugins au cours de l'année écoulée, nous sommes désormais prêts à procéder à une mise à niveau similaire au cœur de Discourse. \nBien qu'il s'agisse d'une refonte complète du noyau…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"}],"tags_descriptions":{},"views":154,"like_count":37,"has_summary":false,"last_poster_username":"merefield","category_id":7,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is migrating its core JavaScript build system from ember-cli/webpack to rolldown, promising 80% faster development builds and native ES Modules while maintaining full backward compatibility for production installations.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"Auteur le plus récent","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Amélioration du passage automatique entre les modes mobile et bureau","fancy_title_localized":true,"locale":"en","id":384280,"title":"Improving automatic switching of mobile/desktop modes","slug":"improving-automatic-switching-of-mobile-desktop-modes","posts_count":12,"reply_count":6,"highest_post_number":12,"image_url":null,"created_at":"2025-09-29T18:49:12.662Z","last_posted_at":"2026-05-26T08:23:52.245Z","bumped":true,"bumped_at":"2026-05-26T08:23:52.245Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Historiquement, Discourse avait deux vues distinctes pour mobile et ordinateur. Au fil des ans, celles-ci ont eu tendance à converger vers une conception plus moderne basée sur la largeur de la fenêtre d'affichage. Ces modèles modernes sont documentés ici. Dans le&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"}],"tags_descriptions":{},"views":444,"like_count":36,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":13,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse has permanently removed the legacy mobile mode setting, enforcing viewport-width-based detection to improve tablet and folding phone experiences, while addressing specific theme issues without reverting the change.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":2770,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":71988,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":83716,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":127856,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Optimisation de l&rsquo;affichage de la page d&rsquo;accueil du thème Foundation","fancy_title_localized":true,"locale":"zh_CN","id":403802,"title":"优化Foundation theme首页显示效果","slug":"foundation-theme","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_1024x478.png","created_at":"2026-05-26T07:35:31.363Z","last_posted_at":"2026-05-26T07:35:31.564Z","bumped":true,"bumped_at":"2026-05-26T07:35:31.564Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Résoudre le problème de ce sujet\n\nAprès la dernière mise à jour de reconstruction, la police de la page d'accueil est devenue très petite - Contribution / Expérience utilisateur - Discourse Meta\n\nOptimiser l'affichage de la page d'accueil grâce à des composants personnalisés :\n\nAvant l'optimisation :\n\nAprès l'optimisation :\n\nCode CSS du composant personnalisé :\n/* ========== Rendre les marges supérieure et inférieure des lignes de catégories cohérentes ========== */\n.category-list tbody tr td {\n  padding-top: 10px !important;\n  padding-&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1114,"height":521,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":478,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_1024x478.png"},{"max_width":800,"max_height":800,"width":800,"height":374,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_800x374.png"},{"max_width":600,"max_height":600,"width":600,"height":280,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_600x280.png"},{"max_width":400,"max_height":400,"width":400,"height":187,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_400x187.png"},{"max_width":300,"max_height":300,"width":300,"height":140,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_300x140.png"},{"max_width":200,"max_height":200,"width":200,"height":93,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_200x93.png"}],"tags":[],"tags_descriptions":{},"views":75,"like_count":1,"has_summary":false,"last_poster_username":"sniper756","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shared CSS code to optimize the Foundation theme homepage display, achieving improved spacing, font sizes, and alignment for category lists and featured topics.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Créateur du sujet, Auteur le plus récent","user_id":185831,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Un outil d&rsquo;archivage Discourse de base","fancy_title_localized":true,"locale":"en","id":62614,"title":"A basic Discourse archival tool","slug":"a-basic-discourse-archival-tool","posts_count":25,"reply_count":41,"highest_post_number":58,"image_url":null,"created_at":"2017-05-12T20:20:12.074Z","last_posted_at":"2025-04-30T02:30:28.021Z","bumped":true,"bumped_at":"2026-05-22T01:36:29.629Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Outil d'archivage mis à jour avec Codex de mai 2026\nIl semble qu'il soit assez délicat de sauvegarder l'intégralité d'un site Discourse dans une version statique. Selon ce post de Jeff Atwood, c'est « beaucoup plus difficile qu'on ne le pense ». Cela ne s'applique pas…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":14479,"like_count":167,"has_summary":false,"last_poster_username":"Diego_Rivera_Buendia","category_id":7,"op_like_count":44,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse archival tool generates static HTML versions of sites using the API, with limitations, and is available on GitHub for potential expansion or inspiration.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":13426,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":22295,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":32,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":119529,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":174704,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Les notifications sont regroupées pour plus d&rsquo;une réponse sur le même message","fancy_title_localized":true,"locale":"en","id":403440,"title":"Notification are grouped for the more than 1 reply on the same post","slug":"notification-are-grouped-for-the-more-than-1-reply-on-the-same-post","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-05-20T15:00:39.307Z","last_posted_at":"2026-05-20T15:00:39.482Z","bumped":true,"bumped_at":"2026-05-20T15:00:39.482Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Nous utilisons les API de notifications de Discourse et les requêtes Data Explorer, et nous observons un comportement de consolidation/groupe de notifications pour :\n\n\nles notifications de réponse/commentaire (notification_type = 2)\n\n\nles notifications de réaction (no…\n","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":58,"like_count":0,"has_summary":false,"last_poster_username":"nitinkg","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user inquires about Discourse's notification consolidation behavior, asking if settings control database-level grouping, whether rows are updated before thresholds, and if disabling consolidation or identifying reacting users is supported.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Créateur du sujet, Auteur le plus récent","user_id":189191,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"PG::UndefinedTable: ERROR: relation &ldquo;translation_overrides&rdquo; does not exist","fancy_title_localized":false,"locale":null,"id":42599,"title":"PG::UndefinedTable: ERROR: relation \"translation_overrides\" does not exist","slug":"pg-undefinedtable-error-relation-translation-overrides-does-not-exist","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2016-04-15T09:46:09.119Z","last_posted_at":"2026-05-20T10:17:55.951Z","bumped":true,"bumped_at":"2026-05-20T10:17:55.951Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"I have cloned master and in trying to run migrations i get this error: \nActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation “translation_overrides” does not exist \nI see that a topic was created for this&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"unicode_title":"PG::UndefinedTable: ERROR: relation \"translation_overrides\" does not exist","thumbnails":null,"tags":[],"tags_descriptions":{},"views":4039,"like_count":2,"has_summary":false,"last_poster_username":"Eric_Keller","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The missing 'translation_overrides' table error during migrations stems from a version mismatch between the restored backup and container code, resolved by rebuilding the schema before restoring the backup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":20734,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":1995,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":98059,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":24424,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Bot de triage des correctifs Discourse","fancy_title_localized":true,"locale":"en","id":402898,"title":"Discourse-patch-triage bot","slug":"discourse-patch-triage-bot","posts_count":7,"reply_count":4,"highest_post_number":9,"image_url":null,"created_at":"2026-05-13T18:49:14.058Z","last_posted_at":"2026-05-19T22:19:58.957Z","bumped":true,"bumped_at":"2026-05-19T22:19:58.957Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"J'essaie de comprendre comment utiliser le nouveau bot discourse-patch-triage lors de la création de PR depuis notre propre fork, et c'est un peu déroutant, surtout dans une conversation à trois avec lui et un réviseur de l'équipe. Y a-t-il une méthode appropriée pour...","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":148,"like_count":10,"has_summary":false,"last_poster_username":"Lilly","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"While the patch-triage bot now supports review and commit actions on forks, a user reported that using the 'fix all' command inadvertently modified code outside the intended scope.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent, Réponse acceptée","user_id":98939,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Environnement de développement : meilleure façon d&rsquo;amorcer le premier compte administrateur sans e-mail ?","fancy_title_localized":true,"locale":"en","id":399187,"title":"Dev environment: recommended way to bootstrap the first admin account without email?","slug":"dev-environment-recommended-way-to-bootstrap-the-first-admin-account-without-email","posts_count":7,"reply_count":4,"highest_post_number":7,"image_url":null,"created_at":"2026-03-24T22:06:30.037Z","last_posted_at":"2026-05-16T16:26:02.739Z","bumped":true,"bumped_at":"2026-05-16T16:26:02.739Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"J'expérimentais avec l'image Docker `discourse/discourse_dev` (sur un ordinateur portable Windows 11) et j'ai remarqué un petit point de friction dans le flux de travail du développeur.\nLorsque j'exécute Discourse en mode développement sans e-mail sortant...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":278,"name":"développement","slug":"development"}],"tags_descriptions":{},"views":126,"like_count":9,"has_summary":false,"last_poster_username":"Moin","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Ethsim2 clarified that the standard `d/boot_dev --init` command handles admin account creation, while MailHog facilitates local email testing. Additionally, Moin explained that the vertical toolbar icons are developer controls for toggling safe mode, localization, and plugin outlets.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"Auteur fréquent","user_id":2770,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"Auteur le plus récent","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"PR : Intégration de MiniScheduler::Web avec Sidekiq 8","fancy_title_localized":true,"locale":"en","id":400645,"title":"PR: Fix MiniScheduler::Web integration with Sidekiq 8","slug":"pr-fix-minischeduler-web-integration-with-sidekiq-8","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-04-14T22:24:55.226Z","last_posted_at":"2026-05-13T11:14:35.559Z","bumped":true,"bumped_at":"2026-05-13T11:14:35.559Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Dans ma dernière PR, j'ai accidentellement cassé l'intégration de MiniScheduler::Web :\nLa version actuelle (v0.19.0) génère des erreurs dès que vous appelez require « mini_scheduler/web ». La cause racine est un changement dans l'API que Sidekiq::Web pr&hellip;","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":81,"like_count":3,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The PR fixing the broken MiniScheduler::Web integration with Sidekiq 8 has been merged and released.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":117390,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Compétences pour créer des thèmes et des blocs","fancy_title_localized":true,"locale":"en","id":401629,"title":"Skills for authoring themes and blocks","slug":"skills-for-authoring-themes-and-blocks","posts_count":8,"reply_count":3,"highest_post_number":10,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_1023x1009.png","created_at":"2026-04-27T17:39:44.880Z","last_posted_at":"2026-05-11T09:36:54.700Z","bumped":true,"bumped_at":"2026-05-11T09:36:54.700Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Un référentiel de compétences Claude Code pour créer des thèmes Discourse et des composants de blocs :\n\n:toolbox: Ce qui est inclus\nCompétence d'authoring de thème — couvre un périmètre complet de création d'un thème Discourse : mise en place avec le...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1523,"height":1501,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d.png"},{"max_width":1024,"max_height":1024,"width":1023,"height":1009,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_1023x1009.png"},{"max_width":800,"max_height":800,"width":800,"height":788,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_800x788.png"},{"max_width":600,"max_height":600,"width":600,"height":591,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_600x591.png"},{"max_width":400,"max_height":400,"width":400,"height":394,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_400x394.png"},{"max_width":300,"max_height":300,"width":300,"height":295,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_300x295.png"},{"max_width":200,"max_height":200,"width":200,"height":197,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_200x197.png"}],"tags":[{"id":820,"name":"guides-thématiques","slug":"theme-guides"},{"id":1160,"name":"compétences","slug":"skills"},{"id":1159,"name":"blocs","slug":"blocks"}],"tags_descriptions":{},"views":332,"like_count":42,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":18,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Manuel clarified that the Discourse theme skills remain synchronized with API updates, while the example theme serves as a reference; he advised users to fork freely and consult the skills documentation for maintaining compatibility with evolving Discourse versions.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":82960,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"Auteur fréquent","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":60726,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":161351,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Étude de cas d&rsquo;un auteur de plugin amateur","fancy_title_localized":true,"locale":"en","id":402084,"title":"Case study of an amateur plugin author","slug":"case-study-of-an-amateur-plugin-author","posts_count":12,"reply_count":8,"highest_post_number":12,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_1024x195.png","created_at":"2026-05-03T03:41:19.217Z","last_posted_at":"2026-05-04T18:56:52.183Z","bumped":true,"bumped_at":"2026-05-04T18:56:52.183Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"En 2024, j'étais à la recherche d'un emploi. J'ai décidé de proposer mes services en tant que consultant communautaire. Cependant, la plupart des gens étaient surtout intéressés par une aide technique pour réparer ou mettre à jour leurs sites Discourse. Un client potentiel a demandé…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1233,"height":236,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":195,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_1024x195.png"},{"max_width":800,"max_height":800,"width":799,"height":153,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_799x153.png"},{"max_width":600,"max_height":600,"width":600,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_600x114.png"},{"max_width":400,"max_height":400,"width":399,"height":76,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_399x76.png"},{"max_width":300,"max_height":300,"width":300,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_300x57.png"},{"max_width":200,"max_height":200,"width":199,"height":38,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_199x38.png"}],"tags":[],"tags_descriptions":{},"views":294,"like_count":36,"has_summary":false,"last_poster_username":"jericson","category_id":7,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse developers clarified the `.hbs` deprecation timeline and updated documentation, while users discussed the impact of AI coding tools on plugin maintenance and the need for clearer migration guidance for non-expert authors.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":15442,"primary_group_id":null,"flair_group_id":118},{"extras":null,"description":"Auteur fréquent","user_id":113000,"primary_group_id":null,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":113325,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Mise à jour de bin/lint brise le flux de linting pour les plugins non regroupés","fancy_title_localized":true,"locale":"en","id":402126,"title":"Update to bin/lint breaks linting flow for non-bundled plugins","slug":"update-to-bin-lint-breaks-linting-flow-for-non-bundled-plugins","posts_count":10,"reply_count":8,"highest_post_number":10,"image_url":null,"created_at":"2026-05-04T09:56:56.296Z","last_posted_at":"2026-05-04T18:27:02.131Z","bumped":true,"bumped_at":"2026-05-04T18:27:02.131Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Un changement récent sur la branche principale de Discourse (https://github.com/discourse/discourse/commit/e84d7c9f26ed) a cassé notre méthode de linting des plugins personnalisés sur lesquels nous travaillons.\nLe sujet de la PR/commit était\n\nDEV: Mise à jour de bin/lint pour fon…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":143,"like_count":10,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A recent Discourse update broke linting for non-bundled plugins, but after iterative debugging and fixes regarding file detection and the --fix flag, the issue was resolved and the pull request was merged.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":22917,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent, Réponse acceptée","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Mise à jour automatique des thèmes et des plugins au format de fichier .gjs","fancy_title_localized":true,"locale":"en","id":368051,"title":"Automatically updating themes and plugins to .gjs file format","slug":"automatically-updating-themes-and-plugins-to-gjs-file-format","posts_count":10,"reply_count":6,"highest_post_number":11,"image_url":null,"created_at":"2025-05-29T10:56:25.320Z","last_posted_at":"2026-05-02T19:42:35.188Z","bumped":true,"bumped_at":"2026-05-02T19:42:35.188Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Dans la dernière version de la configuration d'analyse standard de Discourse, nous avons activé la règle ember-template-lint require-strict-mode. Cela lèvera une erreur d'analyse pour tout fichier .hbs. Pour résoudre les avertissements, vous devez conve\n...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"}],"tags_descriptions":{},"views":430,"like_count":29,"has_summary":false,"last_poster_username":"jericson","category_id":7,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse introduced a linting rule requiring .hbs files to be converted to .gjs format, with a codemod provided for automation, while users noted that older skeletons may also require updated eslint configuration files.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"Auteur fréquent","user_id":173218,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":15442,"primary_group_id":null,"flair_group_id":118}]},{"fancy_title":"Gérer l&rsquo;appartenance au groupe via l&rsquo;authentification","fancy_title_localized":true,"locale":"en","id":175950,"title":"Managing group membership via authentication","slug":"managing-group-membership-via-authentication","posts_count":33,"reply_count":19,"highest_post_number":34,"image_url":null,"created_at":"2021-01-13T06:50:24.340Z","last_posted_at":"2026-04-29T11:00:52.096Z","bumped":true,"bumped_at":"2026-04-29T11:00:52.096Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"@david Continuing the discussion from \nhttps://github.com/discourse/discourse-openid-connect/pull/7#issuecomment-758082333 \nAs you probably can guess, I’m also keen to see a stable solution to this problem, which is not &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":5491,"like_count":126,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":11,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse v2026.4.0 introduced group sync for OIDC, allowing automatic membership updates based on token claims, which resolves earlier discussions about managing external versus manual group assignments.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":13378,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"Auteur fréquent","user_id":5795,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":113094,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":154549,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"L&rsquo;installateur Minio fait planter l&rsquo;Intégration Continue","fancy_title_localized":true,"locale":"en","id":401370,"title":"Minio installer breaks CI","slug":"minio-installer-breaks-ci","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-04-23T15:20:15.014Z","last_posted_at":"2026-04-29T00:38:21.091Z","bumped":true,"bumped_at":"2026-04-29T00:38:21.091Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Le script d'installation de minio_runner est cassé en raison d'une redirection qui n'est pas suivie. Cela affecte les flux de travail partagés des actions GitHub du dépôt .github. \nPour nos plugins, cela signifie que nous ne pouvons pas exécuter Rails …","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":278,"name":"développement","slug":"development"},{"id":1056,"name":"bogue","slug":"bug"}],"tags_descriptions":{},"views":132,"like_count":8,"has_summary":false,"last_poster_username":"Lilly","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The Minio installer issue breaking CI workflows due to an unhandled redirect has been resolved by a fix merged in the minio_runner repository.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":22917,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent, Réponse acceptée","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"Auteur fréquent","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Amélioration de la documentation de l&rsquo;API Discourse pour créer une communauté frontend entièrement personnalisée","fancy_title_localized":true,"locale":"en","id":401236,"title":"Improving Discourse API documentation for building fully custom frontend community","slug":"improving-discourse-api-documentation-for-building-fully-custom-frontend-community","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2026-04-22T11:48:13.415Z","last_posted_at":"2026-04-22T13:15:05.826Z","bumped":true,"bumped_at":"2026-04-22T13:15:05.826Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour à tous :waving_hand: \nJ'ai développé une interface personnalisée en utilisant Discourse comme backend headless (architecture basée sur Next.js) et je souhaite partager quelques lacunes pratiques que j'ai rencontrées dans la conception actuelle de l'API pour…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":330,"name":"api-rest","slug":"rest-api"}],"tags_descriptions":{"api-rest":"Sujets sur la réalisation d'une requête externe à Discourse"},"views":77,"like_count":6,"has_summary":false,"last_poster_username":"darkpixlz","category_id":7,"op_like_count":6,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A developer outlines API documentation and structural gaps hindering headless Discourse frontends, while a responder adds that inconsistent form-encoded endpoints further complicate modern JSON-based integrations.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":191326,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":114728,"primary_group_id":276,"flair_group_id":276}]},{"fancy_title":"Supprimer un brouillon via l&rsquo;API : erreur not_found","fancy_title_localized":true,"locale":"en","id":401220,"title":"Delete Draft post from the API - getting not_found error","slug":"delete-draft-post-from-the-api-getting-not-found-error","posts_count":2,"reply_count":0,"highest_post_number":3,"image_url":null,"created_at":"2026-04-22T08:38:25.157Z","last_posted_at":"2026-04-22T10:32:31.402Z","bumped":true,"bumped_at":"2026-04-22T10:32:31.402Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour,\n\nJe tente de supprimer un brouillon en utilisant l'API :\nDELETE /drafts/{draft_key}.json\n\nLe brouillon existe (vérifié via GET /drafts.json) et j'utilise le bon draft_key et la bonne séquence.\n\nRequête API (Postman / backend)\nDELET&hellip;","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":330,"name":"api-rest","slug":"rest-api"}],"tags_descriptions":{"api-rest":"Sujets sur la réalisation d'une requête externe à Discourse"},"views":58,"like_count":1,"has_summary":false,"last_poster_username":"zogstrip","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user's API draft deletion error was identified as an inconsistency in fallback authentication, which is being resolved by a pending pull request that adds support for the username query parameter.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":189191,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":1995,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Interagir avec Discourse depuis Python ?","fancy_title_localized":true,"locale":"en","id":87543,"title":"Interact with discourse from Python?","slug":"interact-with-discourse-from-python","posts_count":32,"reply_count":25,"highest_post_number":33,"image_url":null,"created_at":"2018-05-15T16:34:39.786Z","last_posted_at":"2026-04-20T15:11:15.147Z","bumped":true,"bumped_at":"2026-04-20T15:11:15.147Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour à tous ! Nous adorons Discourse, c'est le pilier de notre communauté.  \nNous sommes un projet open source avec une forte présence sur GitHub. Nous avons un robot écrit en Python qui gère nos dépôts GitHub et effectue des tâches comme…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":5315,"like_count":88,"has_summary":false,"last_poster_username":"supermathie","category_id":7,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"After concerns about Terms of Service violations regarding automated forum access, the Discourse team clarified that tools accessing public endpoints are acceptable provided users avoid bulk scraping and respect rate limits, prompting the tool creator to add a compliance disclaimer.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":31176,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":83597,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"Auteur fréquent","user_id":189822,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Auteur le plus récent","user_id":3,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Déplacement en un clic activé par catégorie","fancy_title_localized":true,"locale":"en","id":400983,"title":"Category-toggled one-touch move post","slug":"category-toggled-one-touch-move-post","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-04-19T06:34:58.520Z","last_posted_at":"2026-04-19T06:34:59.112Z","bumped":true,"bumped_at":"2026-04-19T06:34:59.112Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour,\n\nDans ma catégorie de courriels, je souhaiterais pouvoir activer un bouton qui s'affiche sur chaque publication de cette catégorie.\nCela sélectionnerait automatiquement la publication et ouvrirait la boîte de dialogue pour la déplacer vers une catégorie existante...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":61,"like_count":0,"has_summary":false,"last_poster_username":"Ethsim2","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquires about the implementation complexity of adding a one-touch button to automatically select posts and open the split dialogue within a specific email category.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Créateur du sujet, Auteur le plus récent","user_id":160471,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"Désactiver la page initiale qui redirige vers /login","fancy_title_localized":true,"locale":"en","id":400773,"title":"Disable initial page that re-directs to /login","slug":"disable-initial-page-that-re-directs-to-login","posts_count":6,"reply_count":5,"highest_post_number":6,"image_url":null,"created_at":"2026-04-16T08:40:01.531Z","last_posted_at":"2026-04-17T19:05:23.863Z","bumped":true,"bumped_at":"2026-04-17T19:05:23.863Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour,\nJe mets actuellement en place une redirection lente, afin d'éviter d'avoir à appuyer sur le seul bouton de connexion de la page initiale\nimport { apiInitializer } from \"discourse/lib/api\";\n\nexport default apiInitializer(\"1.0\", (api) => {\n  ap…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":740,"name":"connexion","slug":"login"}],"tags_descriptions":{},"views":128,"like_count":5,"has_summary":false,"last_poster_username":"Ethsim2","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user resolved the slow redirect issue by discovering the 'skip landing screen' setting was already enabled and subsequently disabled local logins because their login and sign-up pages are identical.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"Auteur fréquent","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":1995,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":21029,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Dépréciation de l&rsquo;extension de fichier .hbs dans les thèmes et plugins","fancy_title_localized":true,"locale":"en","id":398896,"title":"Deprecating .hbs file extension in themes and plugins","slug":"deprecating-hbs-file-extension-in-themes-and-plugins","posts_count":19,"reply_count":11,"highest_post_number":19,"image_url":null,"created_at":"2026-03-20T16:48:11.841Z","last_posted_at":"2026-04-13T13:09:24.980Z","bumped":true,"bumped_at":"2026-04-13T13:09:24.980Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Dans la dernière version de Discourse, l'utilisation de fichiers .hbs dans les thèmes et les plugins est obsolète. La prise en charge de ce format de fichier sera supprimée après la prochaine version ESR.\nLes modèles Handlebars doivent être remplacés par les ... plus...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"}],"tags_descriptions":{},"views":611,"like_count":43,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A plugin developer expresses frustration over the deprecation of .hbs files, arguing that frequent breaking changes undermine stability, while the Discourse team defends the transition as a necessary evolution supported by automated migration tools and a clear deprecation timeline.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":173218,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":26605,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":406,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"Auteur le plus récent","user_id":82960,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Meilleures façons de générer ou d&rsquo;obtenir des données de test pour Discourse ?","fancy_title_localized":true,"locale":"en","id":400205,"title":"Best Ways to Generate or Obtain Test Data for Discourse?","slug":"best-ways-to-generate-or-obtain-test-data-for-discourse","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2026-04-08T08:06:21.251Z","last_posted_at":"2026-04-08T08:19:02.937Z","bumped":true,"bumped_at":"2026-04-08T08:19:02.937Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Bonjour à tous :wave: \nJe travaille actuellement avec Discourse et je cherche à mieux comprendre comment tester efficacement les fonctionnalités et les flux de travail. L'un des défis auxquels je suis confronté est de savoir comment obtenir des données de test réalistes et utiles pour un …","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":79,"like_count":7,"has_summary":false,"last_poster_username":"hanoith2022","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user clarified their need for diverse media test files like MP3s beyond standard topic seeding, receiving suggestions to use a webcam for video and generative AI for audio.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":191275,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent, Réponse acceptée","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Utiliser dv (Discourse Vibe) pour configurer Discourse AI en développement","fancy_title_localized":true,"locale":"en","id":388622,"title":"Using dv (Discourse Vibe) to configure Discourse AI in development","slug":"using-dv-discourse-vibe-to-configure-discourse-ai-in-development","posts_count":6,"reply_count":3,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_741x1024.png","created_at":"2025-11-17T03:44:03.670Z","last_posted_at":"2026-04-07T21:58:57.795Z","bumped":true,"bumped_at":"2026-04-07T21:58:57.795Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"dv - Discourse Vibe - https://github.com/samsaffron/dv est un outil que j'ai construit et qui vous permet de travailler facilement sur plusieurs conteneurs de développement Discourse préconfigurés. Je l'ai construit pour faciliter le travail avec les agents IA, b...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1344,"height":1857,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3.png"},{"max_width":1024,"max_height":1024,"width":741,"height":1024,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_741x1024.png"},{"max_width":800,"max_height":800,"width":578,"height":800,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_578x800.png"},{"max_width":600,"max_height":600,"width":434,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_434x600.png"},{"max_width":400,"max_height":400,"width":289,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_289x400.png"},{"max_width":300,"max_height":300,"width":217,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_217x300.png"},{"max_width":200,"max_height":200,"width":144,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_144x200.png"}],"tags":[],"tags_descriptions":{},"views":275,"like_count":23,"has_summary":false,"last_poster_username":"sam","category_id":7,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Sam clarifies that dv is a technical tool primarily for developers to manage multiple isolated Discourse development environments, noting it simplifies even single-instance setups but is not designed for non-technical hobbyists.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Créateur du sujet, Auteur le plus récent","user_id":1,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":161351,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":181081,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Dépréciation des extensions de fichiers .js.es6 dans les thèmes et plugins","fancy_title_localized":true,"locale":"en","id":398894,"title":"Deprecating .js.es6 file extensions in themes and plugins","slug":"deprecating-js-es6-file-extensions-in-themes-and-plugins","posts_count":9,"reply_count":7,"highest_post_number":9,"image_url":null,"created_at":"2026-03-20T16:03:38.678Z","last_posted_at":"2026-04-07T14:34:36.664Z","bumped":true,"bumped_at":"2026-04-07T14:34:36.664Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"En 2020, Discourse est passé de l'extension .js.es6 à .js. Au fil des ans, la grande majorité des thèmes et des plugins sont passés à la nouvelle extension, ce qui offre une bien meilleure compatibilité avec JavaScr moderne&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"nouvelles-des-devs","slug":"dev-news"}],"tags_descriptions":{},"views":259,"like_count":26,"has_summary":false,"last_poster_username":"awesomerobot","category_id":7,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is removing support for .js.es6 extensions to resolve developer confusion and improve tooling, despite plugin author LeoDavidson's objection that the change breaks backward compatibility and demonstrates poor prioritization.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Créateur du sujet","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"Auteur fréquent","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Auteur fréquent","user_id":114728,"primary_group_id":276,"flair_group_id":276},{"extras":"latest","description":"Auteur le plus récent","user_id":2770,"primary_group_id":47,"flair_group_id":47}]}]}}