{"users":[{"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":100484,"username":"JammyDodger","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jammydodger/{size}/254611_2.png","trust_level":3},{"id":153005,"username":"wal","name":null,"avatar_template":"https://avatars.discourse-cdn.com/v4/letter/w/d6d6ee/{size}.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":57788,"username":"nathank","name":"Nathan Kershaw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/nathank/{size}/290039_2.png","flair_name":"support-advocates","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/4/e4038d4d9848de2eabab38e17b8bdb69da154024.svg","flair_bg_color":"FFFFFF","flair_group_id":148,"trust_level":4},{"id":8571,"username":"tobiaseigen","name":"Tobias Eigen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/tobiaseigen/{size}/539204_2.png","trust_level":2},{"id":63921,"username":"eextra","name":"Sylwia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eextra/{size}/170266_2.png","trust_level":2},{"id":77477,"username":"b4oshany","name":"Oshane Bailey","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/b4oshany/{size}/176298_2.png","trust_level":2},{"id":68638,"username":"ClawdiaWolf","name":"Claudia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/clawdiawolf/{size}/262518_2.png","trust_level":2},{"id":16295,"username":"cogdog","name":"Alan Levine","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cogdog/{size}/116536_2.png","trust_level":2},{"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":150857,"username":"MachineScholar","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/machinescholar/{size}/424719_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":172000,"username":"Olle11","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/o/cdc98d/{size}.png","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":64663,"username":"patrickemin","name":"Patrick EMIN","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/patrickemin/{size}/520162_2.png","trust_level":2},{"id":83775,"username":"fitzy","name":"Michael Fitz-Payne","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/fitzy/{size}/192549_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,"trust_level":4},{"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":166720,"username":"opcourdis","name":null,"avatar_template":"https://avatars.discourse-cdn.com/v4/letter/o/45deac/{size}.png","trust_level":2},{"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":24816,"username":"RBoy","name":"RBoy","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/{size}.png","trust_level":2},{"id":133767,"username":"petermarkley","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/petermarkley/{size}/307825_2.png","trust_level":1},{"id":138567,"username":"pHneutre","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/phneutre/{size}/326831_2.png","trust_level":2},{"id":79696,"username":"Jim_Starkweather","name":"Jim Starkweather","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jim_starkweather/{size}/181916_2.png","trust_level":2},{"id":19,"username":"eviltrout","name":"Robin Ward","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eviltrout/{size}/5275_2.png","trust_level":4},{"id":14353,"username":"simon","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/simon/{size}/339122_2.png","trust_level":2},{"id":111706,"username":"kiefferr","name":"Ryan Kieffer","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/a5b964/{size}.png","trust_level":2},{"id":31832,"username":"Ivan_Rapekas","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ivan_rapekas/{size}/248924_2.png","trust_level":2},{"id":5859,"username":"j127","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/j127/{size}/79093_2.png","trust_level":2},{"id":27773,"username":"bletch","name":"Danny Goodall","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/bletch/{size}/69088_2.png","trust_level":2},{"id":117526,"username":"Dave_Driesmans","name":"Dave Driesmans","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dave_driesmans/{size}/253276_2.png","trust_level":0},{"id":179822,"username":"kcahtoor","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/{size}.png","trust_level":1},{"id":40486,"username":"TheBestPessimist","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/thebestpessimist/{size}/247704_2.png","trust_level":2},{"id":57427,"username":"Machigatta","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/machigatta/{size}/125064_2.png","trust_level":1},{"id":104279,"username":"nat","name":"Natalie T","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/nat/{size}/235063_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":19127,"username":"webeindustry","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/webeindustry/{size}/53973_2.png","trust_level":2},{"id":27611,"username":"Jen_Lijo","name":"Jen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jen_lijo/{size}/77057_2.png","trust_level":2},{"id":23842,"username":"AhmadF.Cheema","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ahmadf.cheema/{size}/87109_2.png","trust_level":2},{"id":13093,"username":"pacharanero","name":"Marcus Baw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pacharanero/{size}/500583_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":28866,"username":"schungx","name":"Stephen Chung","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/schungx/{size}/70989_2.png","trust_level":2},{"id":141900,"username":"maaatt","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/m/ecb155/{size}.png","trust_level":2},{"id":25674,"username":"Jithin_Krishnan","name":"Jithin Krishnan","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jithin_krishnan/{size}/121329_2.png","trust_level":1},{"id":704,"username":"AstonJ","name":"AstonJ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/astonj/{size}/215041_2.png","trust_level":2},{"id":149694,"username":"Ambient.Impact","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ambient.impact/{size}/387027_2.png","trust_level":1},{"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":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":27384,"username":"merefield","name":"Robert","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/merefield/{size}/176214_2.png","trust_level":3},{"id":19189,"username":"rkda","name":"RK","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/rkda/{size}/120046_2.png","trust_level":2},{"id":43426,"username":"debryc","name":"Deborah Chang","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/debryc/{size}/101652_2.png","trust_level":2},{"id":193655,"username":"Devansh_Bartwal","name":"Devansh Bartwal","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/devansh_bartwal/{size}/489793_2.png","trust_level":0},{"id":179252,"username":"Athenkosi","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/a/e79b87/{size}.png","trust_level":0},{"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":83228,"username":"xu2","name":"Xu2","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/xu2/{size}/539078_2.png","trust_level":2},{"id":29739,"username":"southpaw","name":"Southpaw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/southpaw/{size}/79352_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":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}],"primary_groups":[{"id":47,"name":"team"},{"id":276,"name":"VolunteerMods"}],"flair_groups":[{"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":148,"name":"support-advocates","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/4/e4038d4d9848de2eabab38e17b8bdb69da154024.svg","flair_bg_color":"FFFFFF","flair_color":""},{"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":73,"name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111"},{"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/documentation/10?page=1","per_page":30,"top_tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":482,"name":"مرجع","slug":"reference"},{"id":543,"name":"ذكاء-اصطناعي","slug":"ai"},{"id":479,"name":"شرح","slug":"explanation"},{"id":812,"name":"مستخدمون","slug":"users"},{"id":820,"name":"أدلة-السمات","slug":"theme-guides"},{"id":39,"name":"بريد-إلكتروني","slug":"email"},{"id":814,"name":"تخصيص","slug":"customization"},{"id":330,"name":"واجهة-برمجة-تطبيقات-rest","slug":"rest-api"},{"id":60,"name":"تسجيل-الدخول-الموحد","slug":"sso"},{"id":484,"name":"دروس-تعليمية","slug":"tutorial"},{"id":275,"name":"أتمتة","slug":"automation"},{"id":9,"name":"مجموعات","slug":"groups"},{"id":819,"name":"رمز","slug":"code"},{"id":3,"name":"الإشراف","slug":"moderation"},{"id":274,"name":"أدلة-الإضافات","slug":"plugin-guides"},{"id":271,"name":"تكوين","slug":"configuring"},{"id":811,"name":"واجهة","slug":"interface"},{"id":65,"name":"ترحيلات","slug":"migrations"},{"id":481,"name":"إعداد-متقدم","slug":"advanced-setup"},{"id":230,"name":"تكامل-الدردشة","slug":"chat-integration"},{"id":799,"name":"فهرس","slug":"index"},{"id":813,"name":"محتوى","slug":"content"},{"id":150,"name":"تثبيت-المطور","slug":"dev-install"},{"id":816,"name":"منصات","slug":"platforms"},{"id":632,"name":"بوت-الذكاء-الاصطناعي","slug":"ai-bot"},{"id":24,"name":"docker","slug":"docker"},{"id":509,"name":"دعوات","slug":"invites"},{"id":55,"name":"نسخ-احتياطية","slug":"backups"},{"id":2,"name":"شارات","slug":"badges"},{"id":263,"name":"اتصال-الخطاب","slug":"discourseconnect"}],"topics":[{"fancy_title":"عمليات جماعية إدارية","fancy_title_localized":true,"locale":"en","id":118349,"title":"Administrative Bulk Operations","slug":"administrative-bulk-operations","posts_count":9,"reply_count":24,"highest_post_number":39,"image_url":null,"created_at":"2019-05-22T00:36:34.343Z","last_posted_at":"2026-06-09T07:19:49.127Z","bumped":true,"bumped_at":"2026-06-09T07:19:49.127Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"ستجد أدناه مجموعة من العمليات الجماعية التي يمكن تشغيلها من سطر الأوامر. ستحتاج إلى وصول SSH، لذا إذا كنت عميلًا مستضافًا، فستحتاج إلى الاتصال بفريق Discourse بشأن تشغيل هذ…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":482,"name":"مرجع","slug":"reference"},{"id":271,"name":"تكوين","slug":"configuring"}],"tags_descriptions":{},"views":14259,"like_count":75,"has_summary":false,"last_poster_username":"nathank","category_id":55,"op_like_count":70,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user resolved a group export issue by disabling membership requests to avoid requiring an owner, allowing migration to proceed before patching settings post-transfer.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":100484,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":153005,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"أحدث كاتب منشور","user_id":57788,"primary_group_id":null,"flair_group_id":148}]},{"fancy_title":"فهم وتخصيص صفحة حول","fancy_title_localized":true,"locale":"en","id":332161,"title":"Understanding and customizing the About page","slug":"understanding-and-customizing-the-about-page","posts_count":1,"reply_count":5,"highest_post_number":1,"image_url":null,"created_at":"2024-10-29T13:31:19.910Z","last_posted_at":"2024-10-29T13:31:19.910Z","bumped":true,"bumped_at":"2026-06-08T22:02:26.641Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"تُعد صفحة «حول» في Discourse قسمًا تمهيديًا للزوار والمبتدئين، حيث تقدم نظرة عامة على المجتمع والأشخاص القائمين عليه، والإحصائيات الأساسية، ومعلومات الاتصال. وعلى الرغم من أنها موجهة في المقام الأول...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"visibility_reason_id":4,"tags":[{"id":917,"name":"صفحة-حول","slug":"about-page"}],"tags_descriptions":{},"views":1341,"like_count":7,"has_summary":false,"last_poster_username":"Discourse","category_id":53,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Administrators can customize Discourse's About page to reflect community identity, including text, banner, and contact details, without needing console access.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":8571,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إنشاء مواضيع ورسائل جديدة عبر IFTTT","fancy_title_localized":true,"locale":"en","id":61336,"title":"Generate new topics, posts and PM via IFTTT","slug":"generate-new-topics-posts-and-pm-via-ifttt","posts_count":6,"reply_count":3,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c.png","created_at":"2017-04-20T16:30:45.305Z","last_posted_at":"2023-03-23T22:43:21.096Z","bumped":true,"bumped_at":"2026-06-08T21:52:07.575Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"هل ترغب في استخدام IFTTT لإنشاء مواضيع ومنشورات ورسائل شخصية جديدة؟ لنبدأ! \nباستخدام Webhooks الخاصة بـ Maker في خدمة IFTTT، يمكننا إجراء استدعاءات لـ Discourse API. للقيام بذلك، يجب علينا أولاً إنشاء مفاتيح API. يمكنك إنشاء مفاتيح API...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1007,"height":209,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c.png"},{"max_width":800,"max_height":800,"width":800,"height":166,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_800x166.png"},{"max_width":600,"max_height":600,"width":600,"height":124,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_600x124.png"},{"max_width":400,"max_height":400,"width":400,"height":83,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_400x83.png"},{"max_width":300,"max_height":300,"width":300,"height":62,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_300x62.png"},{"max_width":200,"max_height":200,"width":200,"height":41,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_200x41.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":817,"name":"مهام","slug":"tasks"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":11493,"like_count":26,"has_summary":false,"last_poster_username":"cogdog","category_id":167,"op_like_count":22,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users face issues with IFTTT integration due to API key and username being sent as GET params instead of headers, prompting alternatives like custom PHP scripts or Zapier for seamless Discourse integration.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":63921,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":77477,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":68638,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":16295,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse AI - آثار الويب","fancy_title_localized":true,"locale":"en","id":339972,"title":"Discourse AI - Web Artifacts","slug":"discourse-ai-web-artifacts","posts_count":5,"reply_count":3,"highest_post_number":6,"image_url":null,"created_at":"2024-12-03T02:36:29.068Z","last_posted_at":"2025-06-13T18:58:11.481Z","bumped":true,"bumped_at":"2026-06-08T21:51:22.542Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"ما هي أدوات الذكاء الاصطناعي؟\nأدوات الذكاء الاصطناعي هي أدوات قوية تتيح للمستخدمين إنشاء ودمج والتفاعل مع مكونات ويب ديناميكية مباشرة داخل منشور في Discourse. يمكن أن تحتوي هذه المكونات على HTML مخصص وCSS و...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":543,"name":"ذكاء-اصطناعي","slug":"ai"}],"tags_descriptions":{},"views":719,"like_count":25,"has_summary":false,"last_poster_username":"MachineScholar","category_id":53,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse AI Artifacts allow embedding interactive web components in posts, but a user reported a bug where an artifact shared via a bot in a private category remains inaccessible to the intended group despite database permissions indicating access.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":1,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"أحدث كاتب منشور","user_id":150857,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إعداد الترقية التلقائية للمواضيع","fancy_title_localized":true,"locale":"en","id":262158,"title":"Configuring auto-bumping for topics","slug":"configuring-auto-bumping-for-topics","posts_count":25,"reply_count":14,"highest_post_number":31,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546.png","created_at":"2023-04-19T00:42:32.634Z","last_posted_at":"2026-06-06T20:10:57.964Z","bumped":true,"bumped_at":"2026-06-06T20:10:57.964Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: يشرح هذا الدليل كيفية إعداد واستخدام الزيادة التلقائية للمواضيع (auto-bumping) في Discourse، بما في ذلك الإعدادات الخاصة بالفئة والمؤقتات الفردية للموضوع.\n:person_raising_hand: مستوى المستخدم المطلوب: مسؤول\nالزيادة التلقائي...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":719,"height":983,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546.png"},{"max_width":800,"max_height":800,"width":585,"height":800,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_585x800.png"},{"max_width":600,"max_height":600,"width":438,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_438x600.png"},{"max_width":400,"max_height":400,"width":292,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_292x400.png"},{"max_width":300,"max_height":300,"width":219,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_219x300.png"},{"max_width":200,"max_height":200,"width":146,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_146x200.png"}],"tags":[{"id":627,"name":"تحديث-تلقائي","slug":"auto-bump"}],"tags_descriptions":{},"views":2132,"like_count":30,"has_summary":false,"last_poster_username":"patrickemin","category_id":53,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user suggested enhancing auto-bumping by prioritizing topics based on visitor interest metrics like views or votes, and by excluding recently created topics to prevent spamming new content.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":172000,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":64663,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"كيف ألغي خطة الاستضافة الخاصة بي؟","fancy_title_localized":true,"locale":"en","id":306413,"title":"How do I cancel my hosting plan?","slug":"how-do-i-cancel-my-hosting-plan","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_1024x228.png","created_at":"2024-05-01T23:36:57.849Z","last_posted_at":"2024-05-01T23:36:57.942Z","bumped":true,"bumped_at":"2026-06-05T11:39:22.941Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: تشرح هذه الدليل كيفية إلغاء خدمة Discourse المستضافة، وتنزيل بياناتك، وفهم خياراتك للحفاظ على وصول محدود إلى موقعك. \n:person_raising_hand: مستوى المستخدم المطلوب: المسؤول...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1630,"height":364,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":228,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_1024x228.png"},{"max_width":800,"max_height":800,"width":800,"height":178,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_800x178.png"},{"max_width":600,"max_height":600,"width":600,"height":133,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_600x133.png"},{"max_width":400,"max_height":400,"width":400,"height":89,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_400x89.png"},{"max_width":300,"max_height":300,"width":300,"height":66,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_300x66.png"},{"max_width":200,"max_height":200,"width":200,"height":44,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_200x44.png"}],"tags":[],"tags_descriptions":{},"views":614,"like_count":3,"has_summary":false,"last_poster_username":"Discourse","category_id":164,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The guide outlines steps to cancel a Discourse hosting plan, detailing automatic data backup generation, alternative downgrade options like staff-only or read-only modes, and the decommissioning timeline.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إعداد Discourse للتطوير على Fedora Linux","fancy_title_localized":true,"locale":"en","id":163348,"title":"Set up Discourse for development on Fedora Linux","slug":"set-up-discourse-for-development-on-fedora-linux","posts_count":13,"reply_count":12,"highest_post_number":25,"image_url":null,"created_at":"2020-09-08T11:00:32.308Z","last_posted_at":"2026-06-05T08:25:11.120Z","bumped":true,"bumped_at":"2026-06-05T08:25:11.120Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"تم اختبار هذا الدليل مقابل تثبيت جديد لـ Fedora 31 و 33، ولكنه قد يعمل على إصدارات أقدم تستخدم أيضًا dnf كأداة لإدارة الحزم. هذا ليس دليلًا رسميًا ولكنه قد يكون مفيدًا للمطورين الآخرين...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":150,"name":"تثبيت-المطور","slug":"dev-install"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة","تثبيت-المطور":"تعليمات ومشاكل تثبيت Discourse للتطوير"},"views":4491,"like_count":43,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":27,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users question the guide's official status and the use of an outdated Ruby version (2.7.1) in the Fedora Discourse development setup instructions.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":83775,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"ناشر متكرر","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":166720,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"تهيئة تسجيل الدخول عبر Facebook لـ Discourse","fancy_title_localized":true,"locale":"en","id":13394,"title":"Configure Facebook login for Discourse","slug":"configure-facebook-login-for-discourse","posts_count":38,"reply_count":114,"highest_post_number":210,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_1024x523.png","created_at":"2014-03-04T17:40:19.713Z","last_posted_at":"2026-06-03T12:45:59.346Z","bumped":true,"bumped_at":"2026-06-03T12:45:59.346Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":exclamation: As of February 2023, Meta has implemented a business verification requirement when publishing new and existing apps. \n\n:warning: Updating the Facebook app API or creating a new app will break existing login&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1394,"height":713,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":523,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_1024x523.png"},{"max_width":800,"max_height":800,"width":800,"height":409,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_800x409.png"},{"max_width":600,"max_height":600,"width":600,"height":306,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_600x306.png"},{"max_width":400,"max_height":400,"width":400,"height":204,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_400x204.png"},{"max_width":300,"max_height":300,"width":300,"height":153,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_300x153.png"},{"max_width":200,"max_height":200,"width":200,"height":102,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_200x102.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":60,"name":"تسجيل-الدخول-الموحد","slug":"sso"},{"id":755,"name":"المصادقة-الاجتماعية","slug":"social-auth"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":332047,"like_count":138,"has_summary":false,"last_poster_username":"pHneutre","category_id":167,"op_like_count":77,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The tutorial for configuring Facebook login in Discourse is currently outdated because the provided developer link is broken and Meta's February 2023 business verification requirement has changed the setup process.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":24816,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":133767,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":138567,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"تضمين تعليقات Discourse على موقع آخر عبر Javascript","fancy_title_localized":true,"locale":"en","id":31963,"title":"Embed Discourse comments on another website via Javascript","slug":"embed-discourse-comments-on-another-website-via-javascript","posts_count":128,"reply_count":311,"highest_post_number":491,"image_url":null,"created_at":"2015-08-10T18:20:46.333Z","last_posted_at":"2026-06-02T19:14:05.544Z","bumped":true,"bumped_at":"2026-06-02T19:14:05.544Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"لدى دي سكورس (Discourse) القدرة على تضمين التعليقات من موضوع في موقع بعيد باستخدام واجهة برمجة تطبيقات جافاسكريبت (Javascript API) تنشئ إطارًا مضمّنًا (IFRAME). للحصول على مثال على ذلك قيد التنفيذ، تحقق من مدونة كودينج هورور (Coding Horror). تتم إدارة المدونة عبر جوست (Ghost) و&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":43,"name":"تضمين","slug":"embedding"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":302993,"like_count":281,"has_summary":true,"last_poster_username":"kiefferr","category_id":167,"op_like_count":116,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss embedding Discourse comments on external sites, noting that private forums on separate domains block display for non-logged-in users and that HTTP 419 errors may stem from CSRF token mismatches between disconnected domains.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":79696,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":19,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":14353,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":111706,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"تهيئة البريد الوارد لإنشاء مواضيع جديدة أو رسائل مجمعة","fancy_title_localized":true,"locale":"en","id":62977,"title":"Configuring incoming email to create new topics or group messages","slug":"configuring-incoming-email-to-create-new-topics-or-group-messages","posts_count":4,"reply_count":30,"highest_post_number":57,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_1024x327.png","created_at":"2017-05-18T20:07:09.953Z","last_posted_at":"2026-02-10T09:21:38.030Z","bumped":true,"bumped_at":"2026-06-02T17:19:29.151Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: يشرح هذا الدليل كيفية إعداد البريد الوارد لإنشاء مواضيع جديدة أو رسائل مجمعة في Discourse، بما في ذلك إعدادات الموقع وإعدادات محددة للفئات أو المجموعات.\n:person_raising_hand: …","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1190,"height":381,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":327,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_1024x327.png"},{"max_width":800,"max_height":800,"width":800,"height":256,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_800x256.png"},{"max_width":600,"max_height":600,"width":600,"height":192,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_600x192.png"},{"max_width":400,"max_height":400,"width":400,"height":128,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_400x128.png"},{"max_width":300,"max_height":300,"width":300,"height":96,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_300x96.png"},{"max_width":200,"max_height":200,"width":200,"height":64,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_200x64.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":832,"name":"البريد-الوارد","slug":"email-in"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":24573,"like_count":52,"has_summary":false,"last_poster_username":"Moin","category_id":53,"op_like_count":50,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user troubleshooting incoming email setup on a self-hosted Discourse instance, using an outdated Bitnami version, seeks clarification on email configuration settings and receives guidance to test on a supported platform instead.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":100484,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":31832,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إنشاء ومشاركة مخطط ألوان","fancy_title_localized":true,"locale":"en","id":61196,"title":"Create and share a color scheme","slug":"create-and-share-a-color-scheme","posts_count":2,"reply_count":0,"highest_post_number":3,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_1024x670.png","created_at":"2017-04-18T14:44:23.540Z","last_posted_at":"2025-08-01T18:49:05.210Z","bumped":true,"bumped_at":"2026-06-02T14:54:24.218Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"يدعم Discourse الآن استيراد مخططات الألوان من مستودع بعيد. سأوضح هنا كيفية القيام بذلك.\nانتقل إلى الألوان وأضف مخطط ألوان.\nاذهب إلى /admin/customize/colors على موقعك…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1950,"height":1276,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":670,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_1024x670.png"},{"max_width":800,"max_height":800,"width":800,"height":523,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_800x523.png"},{"max_width":600,"max_height":600,"width":600,"height":392,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_600x392.png"},{"max_width":400,"max_height":400,"width":400,"height":261,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_400x261.png"},{"max_width":300,"max_height":300,"width":300,"height":196,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_300x196.png"},{"max_width":200,"max_height":200,"width":200,"height":130,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_200x130.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":6291,"like_count":23,"has_summary":false,"last_poster_username":"j127","category_id":56,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"User suggests adding 'hover' and 'selected' fields to the color scheme configuration for enhanced customization.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":5859,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إنشاء ومشاركة مكون سمة الخط","fancy_title_localized":true,"locale":"en","id":62462,"title":"Create and share a font theme component","slug":"create-and-share-a-font-theme-component","posts_count":5,"reply_count":0,"highest_post_number":7,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_1024x412.png","created_at":"2017-05-10T20:48:47.477Z","last_posted_at":"2025-08-19T22:34:35.578Z","bumped":true,"bumped_at":"2026-06-02T14:54:22.736Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"يدعم Discourse استيراد السمات التي تحتوي على أصول من مستودع بعيد. يتيح هذا لمؤلفي السمات مشاركة الخطوط والصور. قم بإنشاء مستودع git جديد يحتوي على الخط\nmkdir discourse-roboto-theme\ncd discourse-r…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1508,"height":608,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":412,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_1024x412.png"},{"max_width":800,"max_height":800,"width":800,"height":322,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_800x322.png"},{"max_width":600,"max_height":600,"width":600,"height":241,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_600x241.png"},{"max_width":400,"max_height":400,"width":400,"height":161,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_400x161.png"},{"max_width":300,"max_height":300,"width":300,"height":120,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_300x120.png"},{"max_width":200,"max_height":200,"width":200,"height":80,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_200x80.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":820,"name":"أدلة-السمات","slug":"theme-guides"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":5991,"like_count":23,"has_summary":false,"last_poster_username":"kcahtoor","category_id":56,"op_like_count":19,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users report errors with undefined variables and missing assets when following the font theme component guide, questioning if the instructions need updating.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":27773,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"ناشر متكرر","user_id":117526,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":179822,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"تطوير إضافات Discourse - الجزء 6: إضافة اختبارات القبول","fancy_title_localized":true,"locale":"en","id":32619,"title":"Developing Discourse Plugins - Part 6 - Add acceptance tests","slug":"developing-discourse-plugins-part-6-add-acceptance-tests","posts_count":33,"reply_count":26,"highest_post_number":38,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_1024x715.png","created_at":"2015-08-27T21:32:26.323Z","last_posted_at":"2022-06-02T11:06:38.274Z","bumped":true,"bumped_at":"2026-06-02T14:54:21.418Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"التعليم السابق: تطوير إضافات Discourse - الجزء 5 - إضافة واجهة إدارية\n\nهل كنت تعلم أن لدى Discourse مجموعتي اختبار كبيرتين لبيانات الكود الخاصة به؟ على جانب الخادم، يحتوي كود Ruby الخاص بنا على مجموعة اختبار تستخدم rs…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1058,"height":739,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":715,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_1024x715.png"},{"max_width":800,"max_height":800,"width":800,"height":558,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_800x558.png"},{"max_width":600,"max_height":600,"width":600,"height":419,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_600x419.png"},{"max_width":400,"max_height":400,"width":400,"height":279,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_400x279.png"},{"max_width":300,"max_height":300,"width":300,"height":209,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_300x209.png"},{"max_width":200,"max_height":200,"width":200,"height":139,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_200x139.png"}],"tags":[{"id":484,"name":"دروس-تعليمية","slug":"tutorial"},{"id":274,"name":"أدلة-الإضافات","slug":"plugin-guides"},{"id":58,"name":"اختبار","slug":"testing"}],"tags_descriptions":{"دروس-تعليمية":""},"views":17409,"like_count":82,"has_summary":false,"last_poster_username":"nat","category_id":56,"op_like_count":30,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users are troubleshooting issues with running acceptance tests for Discourse plugins, resolving errors related to test suites, plugin registration, and EmberCLI, with solutions involving test setup, plugin configuration, and code updates.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":1,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"ناشر متكرر","user_id":40486,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":57427,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":104279,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"تطوير إضافات Discourse - الجزء 5 - إضافة واجهة إدارية","fancy_title_localized":true,"locale":"en","id":31761,"title":"Developing Discourse Plugins - Part 5 - Add an admin interface","slug":"developing-discourse-plugins-part-5-add-an-admin-interface","posts_count":47,"reply_count":40,"highest_post_number":51,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3.png","created_at":"2015-08-04T20:34:32.128Z","last_posted_at":"2024-09-24T11:10:58.173Z","bumped":true,"bumped_at":"2026-06-02T14:54:20.026Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"الدرس السابق: تطوير إضافات Discourse - الجزء 4 - إعداد git\n\nفي بعض الأحيان، لا تكون إعدادات الموقع كافية كواجهة إدارية لكي تعمل إضافتك بالطريقة التي تريدها. على سبيل المثال، إذا قمت بتثبيت إضافة discourse-akism&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":995,"height":244,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3.png"},{"max_width":800,"max_height":800,"width":800,"height":196,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_800x196.png"},{"max_width":600,"max_height":600,"width":600,"height":147,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_600x147.png"},{"max_width":400,"max_height":400,"width":400,"height":98,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_400x98.png"},{"max_width":300,"max_height":300,"width":300,"height":73,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_300x73.png"},{"max_width":200,"max_height":200,"width":200,"height":49,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_200x49.png"}],"tags":[{"id":484,"name":"دروس-تعليمية","slug":"tutorial"},{"id":274,"name":"أدلة-الإضافات","slug":"plugin-guides"}],"tags_descriptions":{"دروس-تعليمية":""},"views":26495,"like_count":85,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":28,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss and resolve issues with adding admin interfaces for their Discourse plugins, sharing code fixes and troubleshooting advice on Ember routing, file naming conventions, and testing errors.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":19127,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":27611,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":19,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"تطوير إضافات Discourse - الجزء 4 - إعداد git","fancy_title_localized":true,"locale":"en","id":31272,"title":"Developing Discourse Plugins - Part 4 - Setup git","slug":"developing-discourse-plugins-part-4-setup-git","posts_count":11,"reply_count":5,"highest_post_number":11,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007.png","created_at":"2015-07-21T20:54:59.409Z","last_posted_at":"2024-01-30T11:12:28.312Z","bumped":true,"bumped_at":"2026-06-02T14:54:17.764Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"الدرس السابق: تطوير إضافات Discourse - الجزء 3 - إضافة إعدادات مخصصة للموقع\n\nالآن بعد أن أصبحت إضافتك أكثر تطورًا، حان الوقت لأن تصبح أكثر تطورًا في طريقة تطويرها.\nنقترح أن تقوم بـ...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":730,"height":413,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007.png"},{"max_width":600,"max_height":600,"width":600,"height":339,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_600x339.png"},{"max_width":400,"max_height":400,"width":400,"height":226,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_400x226.png"},{"max_width":300,"max_height":300,"width":300,"height":169,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_300x169.png"},{"max_width":200,"max_height":200,"width":200,"height":113,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_200x113.png"}],"tags":[{"id":484,"name":"دروس-تعليمية","slug":"tutorial"},{"id":274,"name":"أدلة-الإضافات","slug":"plugin-guides"}],"tags_descriptions":{"دروس-تعليمية":""},"views":13108,"like_count":37,"has_summary":false,"last_poster_username":"maaatt","category_id":56,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Windows and macOS users face challenges with symbolic links in Discourse plugin development; solutions include using junctions in Windows, aliases in macOS, or a synced folder in Vagrant to create working symlinks within the development environment.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":23842,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":13093,"primary_group_id":276,"flair_group_id":276},{"extras":null,"description":"ناشر متكرر","user_id":28866,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":141900,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"تطوير إضافات Discourse - الجزء الأول - إنشاء إضافة أساسية","fancy_title_localized":true,"locale":"en","id":30515,"title":"Developing Discourse Plugins - Part 1 - Create a basic plugin","slug":"developing-discourse-plugins-part-1-create-a-basic-plugin","posts_count":33,"reply_count":87,"highest_post_number":141,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73.png","created_at":"2015-06-26T21:01:08.310Z","last_posted_at":"2025-07-08T20:52:10.855Z","bumped":true,"bumped_at":"2026-06-02T14:54:16.316Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"إن بناء إضافة في Discourse يمكن أن يكون بسيطًا للغاية، بمجرد أن تتعرف على بعض الخصائص الفريدة. يهدف هذا المنشور إلى إنشاء هيكل أساسي للإضافة وتعريفك بالأساسيات.\nبيئة التطوير الخاصة بك\nتأكد من أن لديك...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":845,"height":128,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73.png"},{"max_width":800,"max_height":800,"width":800,"height":121,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_800x121.png"},{"max_width":600,"max_height":600,"width":600,"height":90,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_600x90.png"},{"max_width":400,"max_height":400,"width":400,"height":60,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_400x60.png"},{"max_width":300,"max_height":300,"width":300,"height":45,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_300x45.png"},{"max_width":200,"max_height":200,"width":200,"height":30,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_200x30.png"}],"tags":[{"id":484,"name":"دروس-تعليمية","slug":"tutorial"},{"id":274,"name":"أدلة-الإضافات","slug":"plugin-guides"}],"tags_descriptions":{"دروس-تعليمية":""},"views":82768,"like_count":210,"has_summary":false,"last_poster_username":"Ambient.Impact","category_id":56,"op_like_count":110,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The discussion details an issue encountered when creating plugins with the Docker setup, requiring users to configure Git's user email and name within the container before running `rake plugin:create`.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":25674,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":13093,"primary_group_id":276,"flair_group_id":276},{"extras":null,"description":"ناشر متكرر","user_id":704,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":149694,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"استخدام واجهة برمجة تطبيقات DModal لعرض نوافذ منبثقة (المعروفة أيضًا باسم النوافذ المنبثقة أو الحوارات) في Discourse","fancy_title_localized":true,"locale":"en","id":268304,"title":"Using the DModal API to render Modal windows (aka popups/dialogs) in Discourse","slug":"using-the-dmodal-api-to-render-modal-windows-aka-popups-dialogs-in-discourse","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35.png","created_at":"2023-07-03T09:52:06.275Z","last_posted_at":"2023-07-03T09:52:06.275Z","bumped":true,"bumped_at":"2026-06-02T14:54:11.378Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"يأتي Discourse 3.1.0.beta6 مع واجهة برمجة تطبيقات جديدة تمامًا تعتمد على المكون &lt;DModal&gt;.\n\n:information_source: هذه الواجهة تحل محل واجهة برمجة التطبيقات القديمة القائمة على المتحكمات، والتي أصبحت الآن قديمة. إذا كان لديك نوافذ منبثقة موجودة تستخدم واجهات برمجة التطبيقات القديمة، فستحتاج...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":696,"height":258,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35.png"},{"max_width":600,"max_height":600,"width":600,"height":222,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_600x222.png"},{"max_width":400,"max_height":400,"width":400,"height":148,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_400x148.png"},{"max_width":300,"max_height":300,"width":300,"height":111,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_300x111.png"},{"max_width":200,"max_height":200,"width":200,"height":74,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_200x74.png"}],"tags":[{"id":819,"name":"رمز","slug":"code"}],"tags_descriptions":{},"views":2083,"like_count":17,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse 3.1.0.beta6 introduces the <DModal> component API for rendering modals, replacing the deprecated controller-based method, with examples for template use, component wrapping, and service-based triggering.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":1,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"فهرس أدلة المطورين","fancy_title_localized":true,"locale":"en","id":308036,"title":"Developer Guides Index","slug":"developer-guides-index","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":null,"created_at":"2024-05-15T06:05:51.350Z","last_posted_at":"2024-05-15T06:05:51.457Z","bumped":true,"bumped_at":"2026-06-01T15:09:46.938Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"توثيق حول توسيع Discourse باستخدام الإضافات والمظاهر ومكونات المظاهر، والعمل مع الكود الأساسي، واستخدام واجهة برمجة تطبيقات Discourse.\nمقدمة\n\nمقدمة: مقدمة في تطوير Discourse\n\nالتطوير…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":799,"name":"فهرس","slug":"index"}],"tags_descriptions":{"فهرس":"فهرس مواضيع فئة التوثيق."},"views":1986,"like_count":13,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":13,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discussion about creating a plugin skeleton, with the original link now found at https://meta.discourse.org/t/automating-discourse-plugin-setup-with-create-discourse-plugin-gem/315013, which provides a rake task for automating Discourse plugin setup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":100484,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"أدرج نصوصًا أو صورًا في أي مكان على موقعك باستخدام عناصر CSS الوهمية","fancy_title_localized":true,"locale":"en","id":99200,"title":"Insert text or images anywhere on your site using CSS pseudo-elements","slug":"insert-text-or-images-anywhere-on-your-site-using-css-pseudo-elements","posts_count":1,"reply_count":6,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_1024x471.png","created_at":"2018-10-11T11:12:34.130Z","last_posted_at":"2018-10-11T11:12:34.130Z","bumped":true,"bumped_at":"2026-06-01T15:09:42.855Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"إذن، تريد إدراج نص أو صورة في موقع Discourse الخاص بك. \nفيما يتعلق بالنص، في معظم الحالات يكفي تعديله من /admin/customize/site_texts. \nلكن في بعض الأحيان، يكون رغبتنا هي إضافة جملة …","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1911,"height":879,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":471,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_1024x471.png"},{"max_width":800,"max_height":800,"width":800,"height":367,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_800x367.png"},{"max_width":600,"max_height":600,"width":600,"height":275,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_600x275.png"},{"max_width":400,"max_height":400,"width":400,"height":183,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_400x183.png"},{"max_width":300,"max_height":300,"width":300,"height":137,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_300x137.png"},{"max_width":200,"max_height":200,"width":200,"height":91,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_200x91.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":814,"name":"تخصيص","slug":"customization"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":17984,"like_count":33,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"To insert text or images on a site, use CSS pseudo-elements `:before` and `:after` to add content to elements without modifying existing HTML, by editing the site's stylesheet in the browser's developer console.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Designing for Different Devices (Viewport Size, Touch/Hover, etc.)","fancy_title_localized":false,"locale":null,"id":367810,"title":"Designing for Different Devices (Viewport Size, Touch/Hover, etc.)","slug":"designing-for-different-devices-viewport-size-touch-hover-etc","posts_count":15,"reply_count":11,"highest_post_number":15,"image_url":null,"created_at":"2025-05-27T18:17:05.719Z","last_posted_at":"2026-01-25T21:34:26.908Z","bumped":true,"bumped_at":"2026-06-01T15:09:36.242Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"This document outlines the APIs used to adapt Discourse’s user interface for different devices. \nViewport Size\nThe most important characteristic to consider is the viewport size. We design “mobile first” and then add cus&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":701,"like_count":24,"has_summary":false,"last_poster_username":"merefield","category_id":56,"op_like_count":12,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is phasing out legacy mobile/desktop modes in favor of viewport and touch detection; users discuss deprecating outdated classes like pull-left and adapting core components for responsive layouts across devices.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":-1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"ناشر متكرر","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"ناشر متكرر","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Guidelines for CSS classes using BEM","fancy_title_localized":false,"locale":null,"id":361851,"title":"Guidelines for CSS classes using BEM","slug":"guidelines-for-css-classes-using-bem","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-04-15T05:48:23.418Z","last_posted_at":"2025-04-15T05:48:23.483Z","bumped":true,"bumped_at":"2026-06-01T15:09:34.864Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Background\nWhen writing CSS classes for Discourse components, themes, or plugins, we follow a modified variant of Block Element Modifier (BEM). Following these guidelines will make it much less likely for CSS conflicts t&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":294,"like_count":8,"has_summary":false,"last_poster_username":"system","category_id":56,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse uses a modified BEM variant for CSS classes, following specific syntax and guidelines to minimize conflicts and improve specificity.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Using Transformers to customize client-side values and behavior","fancy_title_localized":false,"locale":null,"id":349954,"title":"Using Transformers to customize client-side values and behavior","slug":"using-transformers-to-customize-client-side-values-and-behavior","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2025-01-31T20:19:51.229Z","last_posted_at":"2025-11-03T03:00:09.908Z","bumped":true,"bumped_at":"2026-06-01T15:09:33.590Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse core includes a number of “transformer” hooks which can be used to customize client behavior. These fall into two categories: \n\n\nValue Transformers take an output from Discourse core, and optionally modify it, &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":605,"like_count":11,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A discussion on using Discourse's transformer hooks to customize client-side values and behavior, with recent updates including a PR to modify the Transformers registry link to the frontend directory.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":-1,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"إعداد إشعارات Slack باستخدام إضافة discourse-chat-integration","fancy_title_localized":true,"locale":"en","id":66730,"title":"Set up Slack notifications using the discourse-chat-integration plugin","slug":"set-up-slack-notifications-using-the-discourse-chat-integration-plugin","posts_count":107,"reply_count":64,"highest_post_number":118,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257.png","created_at":"2017-07-24T16:45:28.351Z","last_posted_at":"2026-06-01T13:26:59.689Z","bumped":true,"bumped_at":"2026-06-01T13:26:59.689Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"هذا \\u003cspan class=\\\"hashtag-icon-placeholder\\\"\\u003e\\u003c/span\\u003eالدليل\\u003c/span\\u003e يصف كيفية إعداد مزود Slack المضمن في تكامل دردشة discourse.\nيسمح بنشر الإشعارات إلى Slack، وإدارة القواعد باستخدام أوامر الشرطة المائلة، ونشر النصوص مرة أخرى إلى Discourse. أوامر الشرطة المائلة و...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":564,"height":464,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257.png"},{"max_width":400,"max_height":400,"width":400,"height":329,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_400x329.png"},{"max_width":300,"max_height":300,"width":300,"height":246,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_300x246.png"},{"max_width":200,"max_height":200,"width":200,"height":164,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_200x164.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":230,"name":"تكامل-الدردشة","slug":"chat-integration"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":33759,"like_count":194,"has_summary":true,"last_poster_username":"Devansh_Bartwal","category_id":167,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquired whether the discourse-chat-integration plugin allows tagging Slack users based on keywords used within the Discourse community.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":19189,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"ناشر متكرر","user_id":43426,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":193655,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"دليل المطور لتوسعات Markdown","fancy_title_localized":true,"locale":"en","id":66023,"title":"Developer's guide to Markdown extensions","slug":"developers-guide-to-markdown-extensions","posts_count":2,"reply_count":13,"highest_post_number":24,"image_url":null,"created_at":"2017-07-11T21:23:25.941Z","last_posted_at":"2026-06-01T08:45:53.539Z","bumped":true,"bumped_at":"2026-06-01T08:45:53.539Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"يستخدم Discourse محرك ماركداون يسمى Markdown-it.\nإليك بعض ملاحظات المطورين التي ستساعدك إما في إصلاح الأخطاء في النواة أو إنشاء إضافاتك الجديدة.\nالأساسيات\nيحتوي Discourse على عدد قليل فقط من الأدوات المساعدة فوق المحرك، ...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":482,"name":"مرجع","slug":"reference"},{"id":52,"name":"ماركداون","slug":"markdown"},{"id":819,"name":"رمز","slug":"code"}],"tags_descriptions":{},"views":13554,"like_count":35,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":35,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"While the guide details creating Markdown extensions for Discourse, a user inquires whether these customizations can be implemented within Theme Components or are restricted to plugins.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"إنشاء نسخة احتياطية من قاعدة بيانات Discourse وتنزيلها واستعادتها","fancy_title_localized":true,"locale":"en","id":122710,"title":"Create, download, and restore a backup of your Discourse database","slug":"create-download-and-restore-a-backup-of-your-discourse-database","posts_count":26,"reply_count":41,"highest_post_number":69,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_1024x292.png","created_at":"2019-07-11T18:39:08.493Z","last_posted_at":"2026-05-29T20:31:09.472Z","bumped":true,"bumped_at":"2026-05-29T20:31:09.472Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: يوفر هذا الدليل إرشادات مفصلة خطوة بخطوة لإنشاء نسخة احتياطية من قاعدة بيانات Discourse الخاصة بك وتنزيلها واستعادتها.\n:person_raising_hand: مستوى المستخدم المطلوب: مسؤول\n\nيتيح Discourse للموقع ...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1241,"height":354,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":292,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_1024x292.png"},{"max_width":800,"max_height":800,"width":800,"height":228,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_800x228.png"},{"max_width":600,"max_height":600,"width":600,"height":171,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_600x171.png"},{"max_width":400,"max_height":400,"width":400,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_400x114.png"},{"max_width":300,"max_height":300,"width":300,"height":85,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_300x85.png"},{"max_width":200,"max_height":200,"width":200,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_200x57.png"}],"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":55,"name":"نسخ-احتياطية","slug":"backups"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة"},"views":24487,"like_count":42,"has_summary":false,"last_poster_username":"southpaw","category_id":55,"op_like_count":32,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse clarified that their infrastructure backups are for disaster recovery only and cannot be used for individual site restores, directing users to contact support for assistance with creating full backups that include uploads.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":179252,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"ناشر متكرر","user_id":83228,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"أحدث كاتب منشور","user_id":29739,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Theme Developer Tutorial: 2. Creating a remote theme","fancy_title_localized":false,"locale":null,"id":357797,"title":"Theme Developer Tutorial: 2. Creating a remote theme","slug":"theme-developer-tutorial-2-creating-a-remote-theme","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-03-18T15:59:09.382Z","last_posted_at":"2025-03-18T15:59:09.454Z","bumped":true,"bumped_at":"2026-05-29T10:12:51.441Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"In the last chapter, we created a basic theme via the Discourse admin interface. This works well enough for very simple themes. But as soon as you want to do something more complex, or share a theme more widely, you’ll n&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":724,"like_count":2,"has_summary":false,"last_poster_username":"system","category_id":56,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The tutorial guides users through creating a remote Discourse theme using the discourse_theme CLI, syncing it to a Discourse instance, adding custom code, and preparing it for GitHub hosting.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Write end-to-end system specs for the Discourse user interface","fancy_title_localized":false,"locale":null,"id":325937,"title":"Write end-to-end system specs for the Discourse user interface","slug":"write-end-to-end-system-specs-for-the-discourse-user-interface","posts_count":4,"reply_count":2,"highest_post_number":5,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64.png","created_at":"2024-09-11T04:07:31.148Z","last_posted_at":"2025-08-28T14:51:13.004Z","bumped":true,"bumped_at":"2026-05-29T10:12:45.063Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Background\nRails system specs are used to simulate the actions of a real user using the app in a browser. We use the Playwright ruby driver which is becoming an industry standard. The tests run locally and in CI out of t&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":990,"height":602,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64.png"},{"max_width":800,"max_height":800,"width":800,"height":486,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_800x486.png"},{"max_width":600,"max_height":600,"width":600,"height":364,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_600x364.png"},{"max_width":400,"max_height":400,"width":400,"height":243,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_400x243.png"},{"max_width":300,"max_height":300,"width":300,"height":182,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_300x182.png"},{"max_width":200,"max_height":200,"width":200,"height":121,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_200x121.png"}],"tags":[],"tags_descriptions":{},"views":619,"like_count":12,"has_summary":false,"last_poster_username":"merefield","category_id":56,"op_like_count":9,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user encountered test failures due to missing color schemes in the test database, which was resolved by resetting the test database using migration commands after confirming the issue was with the local Discourse instance setup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"كاتب المنشور الأصلي","user_id":-1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"ناشر متكرر","user_id":21029,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"أحدث كاتب منشور","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"استخدام «العداد» من Google لقياس تغييرات أداء JS في Discourse","fancy_title_localized":true,"locale":"en","id":281158,"title":"Using Google's 'tachometer' to measure JS performance changes in Discourse","slug":"using-googles-tachometer-to-measure-js-performance-changes-in-discourse","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/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_1024x146.png","created_at":"2023-10-05T13:57:29.422Z","last_posted_at":"2023-10-05T13:57:29.614Z","bumped":true,"bumped_at":"2026-05-29T10:12:43.709Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"عند العمل على الجوانب الخاصة بالعميل في نواة Discourse أو الإضافات أو السمات، من المهم مراعاة الأثر على الأداء. يوفر مشروع «تاكومتر» من جوجل أداة قياس أداء صارمة إحصائيًا يمكن استخدامها لـ …","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1234,"height":176,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":146,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_1024x146.png"},{"max_width":800,"max_height":800,"width":800,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_800x114.png"},{"max_width":600,"max_height":600,"width":600,"height":85,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_600x85.png"},{"max_width":400,"max_height":400,"width":400,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_400x57.png"},{"max_width":300,"max_height":300,"width":300,"height":42,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_300x42.png"},{"max_width":200,"max_height":200,"width":200,"height":28,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_200x28.png"}],"tags":[{"id":819,"name":"رمز","slug":"code"}],"tags_descriptions":{},"views":986,"like_count":17,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Google's 'Tachometer' project is used to measure JS performance changes in Discourse by statistically benchmarking changes through a 'round-robin' approach, reducing external factor impact and producing a comparison table after hundreds/thousands of iterations.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"إعداد بيئة تطوير متعددة المواقع","fancy_title_localized":true,"locale":"en","id":229310,"title":"Set up a multisite development environment","slug":"set-up-a-multisite-development-environment","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2022-06-07T16:01:37.089Z","last_posted_at":"2022-06-07T16:01:37.228Z","bumped":true,"bumped_at":"2026-05-29T10:12:41.903Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"من الممكن تشغيل discourse في وضع المواقع المتعددة أثناء التطوير. يستخدم خادم المواقع المتعددة قاعدة بيانات واسم مضيف مختلف لكل موقع يخدمه. وهذا مفيد إذا كنت تطور ميزة أو إضافة يجب أن...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":150,"name":"تثبيت-المطور","slug":"dev-install"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة","تثبيت-المطور":"تعليمات ومشاكل تثبيت Discourse للتطوير"},"views":2013,"like_count":12,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":12,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Set up multisite development by adding a `config/multisite.yml` file, specifying a separate DB and hostname for each site, and using the `RAILS_DB` environment variable to run rake tasks against targeted sites.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"تثبيت الإضافات في بيئة التطوير غير Docker الخاصة بك","fancy_title_localized":true,"locale":"en","id":205337,"title":"Install plugins in your non-Docker development environment","slug":"install-plugins-in-your-non-docker-development-environment","posts_count":1,"reply_count":2,"highest_post_number":1,"image_url":null,"created_at":"2021-10-06T09:47:24.341Z","last_posted_at":"2021-10-06T09:47:24.632Z","bumped":true,"bumped_at":"2026-05-29T10:12:40.846Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"يتناول هذا الدليل فقط تثبيت التطوير غير القائم على Docker. لتثبيت التطوير باستخدام Docker :whale: راجع تثبيت Discourse للتطوير باستخدام Docker\nإذا اتبعت التعليمات لإعداد discourse المحلي لديك، فيمكنك تثبيت إضافة محلي...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"كيفية","slug":"how-to"},{"id":150,"name":"تثبيت-المطور","slug":"dev-install"}],"tags_descriptions":{"كيفية":"تحتوي أدلة كيفية الإرشاد على خطوات يجب اتباعها لحل مشكلة معينة","تثبيت-المطور":"تعليمات ومشاكل تثبيت Discourse للتطوير"},"views":3406,"like_count":16,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":16,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"To install a plugin locally in a non-Docker development environment, download the plugin, run migrations if necessary, restart the server, and edit settings at localhost:4200/admin/plugins.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"كاتب المنشور الأصلي، أحدث كاتب منشور","user_id":115923,"primary_group_id":null,"flair_group_id":null}]}]}}