Testing GitHub Discussions to Markdown Workflow

How the GitHub Discussions to Markdown System Works

This document demonstrates the automated workflow that converts GitHub Discussions into Hugo-compatible markdown files.

Workflow and Process Overview

┌│└─G─┌│└┌││└┌││└─e──C─┌││└─GC─┌││└┌││└─Fv──n──o──WD──ir──GT──AW─┌││└─ei──e──n──ri──te──ir──co──PE──ta──r──v──ir─F_─Ha──ti──tr──yx──c──a──e──te─i_─ut──Hg──ik──te──hA──t──r──ec─l_─be──ug──of──hc──P──e──t──t─e_┌││└─d──be──nl──ou──DI──────to─_─GC──D/──r──so──nt──i──F──t──or─_C_Mt_─io──iE┬▽We┬▽w┬▽e┬││┴s┬▽r┬▽o┬▽y┬▽h_││││││└oo_─sm──sd──ed────Ss─◁─c──o────c─_a_n─r_─cm──ci──b──S──c───u──n──M──o─_n_o─eP_─ue──ut──h──t──r───s──t──a──n─_g_─r_─sn─┌│└─se──o──a──i───s──m──r──t─_e_─Do_─t──D──sd──o──r──p───i──a──k──e─_d_─_ic_─As──O──i──k──t──t───o──t──d──n─_?_┬▽se_│▽u┬▽N──o─┐││┘─s─┐││┘──n──t──o──t──_cs_n─t──E──n─┐││┘─┐││┘─e──w──/──_us_o─o─┐│┘┐││┘──r──n─┐││┘_y─_s?_─-──┐│┘┐│┘_e─_s_─L──_s─_i_─i──_┌│└─_o_─n──_─P──_n_─k──┌│└─u──_s_─s───C──s─┌││└─┐││┘──o──h──HT────m────ur──_y──m──t──gi──_e──i──o──og──_s──t────g──_────R──Re──_──C┬▽e┬▽er┬┘_──h──p──be─_──a──o──ud─_──n──s──i─_──g──i──l─_──e──t──d─_──s──o─┐││┘_─┐│┘─r─_──y─_─┐│┘_╮│││││││││││││││││││││││││││││
C_┌││└r_E_─MD─┌│└e_d_─ai─┌││└─U─a_i_─ns──PD──s─t_t_─up──ri──e─e__─aa──os──r─_D_─lt──cc───_D__i_─c──eu──A┬▽i_│▽s_│▽Wh┬▽ss┬└─c─_s_n_c_n─o──ss──┌│└┌││└─t─_c_o_u_o─r──i───C──Ag──i─_u__s_─k──Ao───o──di─D_─o─_s__s_─f──ln───n──ds─┌│└e_─n─_s__i_─l──ls───v──c──C─p_┌││└┐│┘_i__o_─o─┐││┘──e──Fu──o─l_─RM─_o__n_─w───r──rs──m─o_─ea─_n__?_┐││┘──t──o_──m─y_─an─_?_────nd──i─m_─du───t──ti──t─e_─ya─_y──o──ms───_n_─l─_y_e┬▽┬▽ac┬▽a┬▽t_│││││▽f─_e_s──H──tu──n─__n─oD─_s┌│└──u──ts──d─_E_o─re─_─D───g──es───_n_─p─_─i─┌││└──o──ri──P─_a_─l─_─s─┌│└─UM─────o──u─_b_─o─_─c──W──pa───P──wn──s─_l_─y─_─u──e──dr───o──i_──h─_e_┐││┘_─s──b──ak───s──ti─┐│┘_d__─s──h──td───t──hd─_?__─i──o──eo──┐│┘┐││┘_─o──o──w──_─n┬▽k┬▽En┬│││┴_y_─────x──_e_─U──F──i──_s_─p──i──s──_┌│└_─d──r──t──┌│└┌│└─L─_─a──e──i───H──D──i─_─t──s──n───u──e──v─_─e─┐│┘─g───g──p──e─_─d─┐││┘──o──l───_┐│┘────o──o─┌││└──B┬▽y┬▽n──NC─┌│└┌││└──u──────er──W──GM───i──S──S──we──e──ea───l──i──i──a──b──nr───d──t──t──Dt──h──ek──┐│┘─e──e──ie──o──rd──┐│┘┐│┘─sd──o──ao───c┬▽k┬▽tw┬│││││││││┘─u────en──s──F────s──i──NF──i──r──ei──o──e──wl──n──s──e─┐││┘┐│┘┐││┘

File Structure

bl├││││├││││├││├││├└o──────g.cclstg├│└o└o└a└thi──n─n─y─aetwstdf_optmho└c└ei├├└id└ua└ieur─r─ns───ge─tr─csbkdidtc[[[fpstcfipiudddaaiolstssiiiuramocscsssslalmwuuiccctmsesssouuusnssnsss.tiisssstsooiiio.nn(ooomhssAnnnlt-_u---mtttiii(looodddG-_----immg123saae]]]crrn...ukkemmmsddrdddooacwwtonnen..dfyp)imygl)

Event Triggers

The workflow is triggered by:

  1. Discussion Created - Automatically converts new discussions to markdown
  2. Discussion Edited - Updates existing markdown files with changes
  3. Manual Dispatch - Can be triggered manually from GitHub Actions

Giscus Compatibility

Each generated markdown file includes:

1
2
3
4
5
---
title: 'Discussion Title'
tags: [tag1, tag2]
giscus_discussion_id: 12345
---

The giscus_discussion_id ensures comments are automatically linked to the original GitHub Discussion.

Sample Generated Output

When a discussion is created with:

  • Title: “How to contribute?”
  • Body: “I’d like to contribute to this project…”
  • Labels: “Q&A”

The system generates:

1
2
3
4
5
6
7
---
title: 'How to contribute?'
tags: [qa, help-wanted]
giscus_discussion_id: J_awddwdawdwdwadw
---

I'd like to contribute to this project...

Benefits

  • ✓ Real-time updates (webhook-triggered)
  • ✓ No manual conversion needed
  • ✓ Preserves formatting and tags
  • ✓ Maintains comment continuity via Giscus
  • ✓ Fully automated workflow
Licensed under CC BY-NC-SA 4.0
Built with Hugo
Theme Stack designed by Jimmy