Skip to content

feat(gnoweb): activate default goldmark extensions #4501

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Jul 18, 2025

Conversation

alexiscolin
Copy link
Member

@alexiscolin alexiscolin commented Jul 11, 2025

This PR aims to activate the default Goldmark missing extensions. It enhances the markdown rendering capabilities in gnoweb:

Changes Made

  • Added extension.TaskList to enable task list support (GitHub-style task lists)
  • Added extension.Footnote to enable footnote support (Supports academic-style footnotes)
  • Both extensions are now included in the default markdown renderer configuration

Syntax

  • TaskList: Uncommented and enhanced the existing task list section with examples showing both completed (- [x]) and pending (- [ ]) tasks
  • Footnote: Added a new comprehensive section demonstrating footnote usage with proper syntax: [^1] for references and [^1]: content for definitions

Impact

  • Low risk: These are official Goldmark extensions with stable APIs
  • Backward compatible: No breaking changes to existing markdown content
  • Enhancement: Adds features we lost with winter gnoweb updates.

UI Improvements Added

TaskList Enhancements

  • Gno-Styled Checkboxes: Tasks are now styled in coherence with future form inputs from PR feat(gnoweb): new form inputs #4438
  • Disabled checkboxes are rendered in a different style

Footnote UX Improvements

  • Enhanced Anchor Positioning: Better positioning of superscript footnote references
  • Improved Scroll Behavior: Fixed margin scroll top to properly view anchors under the header
  • Visual Highlighting: Footnotes are now highlighted with background and subtle emphasis during scroll (visual feedback)

Screenshots

Capture d’écran 2025-07-15 à 16 04 03 Capture d’écran 2025-07-15 à 15 26 55

@alexiscolin alexiscolin marked this pull request as draft July 11, 2025 06:21
@github-actions github-actions bot added 🧾 package/realm Tag used for new Realms or Packages. 📦 ⛰️ gno.land Issues or PRs gno.land package related 🌍 gnoweb Issues & PRs related to gnoweb and render labels Jul 11, 2025
@Gno2D2 Gno2D2 requested a review from gfanton July 11, 2025 06:22
@Gno2D2
Copy link
Collaborator

Gno2D2 commented Jul 11, 2025

🛠 PR Checks Summary

🔴 Changes related to gnoweb must be reviewed by its codeowners

Manual Checks (for Reviewers):
  • IGNORE the bot requirements for this PR (force green CI check)
Read More

🤖 This bot helps streamline PR reviews by verifying automated checks and providing guidance for contributors and reviewers.

✅ Automated Checks (for Contributors):

🟢 Maintainers must be able to edit this pull request (more info)
🔴 Changes related to gnoweb must be reviewed by its codeowners
🟢 Pending initial approval by a review team member, or review from tech-staff

☑️ Contributor Actions:
  1. Fix any issues flagged by automated checks.
  2. Follow the Contributor Checklist to ensure your PR is ready for review.
    • Add new tests, or document why they are unnecessary.
    • Provide clear examples/screenshots, if necessary.
    • Update documentation, if required.
    • Ensure no breaking changes, or include BREAKING CHANGE notes.
    • Link related issues/PRs, where applicable.
☑️ Reviewer Actions:
  1. Complete manual checks for the PR, including the guidelines and additional checks if applicable.
📚 Resources:
Debug
Automated Checks
Maintainers must be able to edit this pull request (more info)

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 The pull request was created from a fork (head branch repo: alexiscolin/gno)

Then

🟢 Requirement satisfied
└── 🟢 Maintainer can modify this pull request

Changes related to gnoweb must be reviewed by its codeowners

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 A changed file matches this pattern: ^gno.land/pkg/gnoweb/ (filename: gno.land/pkg/gnoweb/frontend/css/input.css)

Then

🔴 Requirement not satisfied
└── 🔴 Or
    ├── 🔴 Or
    │   ├── 🔴 And
    │   │   ├── 🟢 Pull request author is user: alexiscolin
    │   │   └── 🔴 This user reviewed pull request: gfanton (with state "APPROVED")
    │   └── 🔴 And
    │       ├── 🔴 Pull request author is user: gfanton
    │       └── 🔴 This user reviewed pull request: alexiscolin (with state "APPROVED")
    └── 🔴 And
        ├── 🔴 Not (🟢 Pull request author is user: alexiscolin)
        ├── 🟢 Not (🔴 Pull request author is user: gfanton)
        └── 🔴 Or
            ├── 🔴 This user reviewed pull request: alexiscolin (with state "APPROVED")
            └── 🔴 This user reviewed pull request: gfanton (with state "APPROVED")

Pending initial approval by a review team member, or review from tech-staff

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 Not (🔴 Pull request author is a member of the team: tech-staff)

Then

🟢 Requirement satisfied
└── 🟢 If
    ├── 🟢 Condition
    │   └── 🟢 Or
    │       ├── 🟢 At least 1 user(s) of the organization reviewed the pull request (with state "APPROVED")
    │       ├── 🟢 At least 1 user(s) of the team tech-staff reviewed pull request
    │       └── 🔴 This pull request is a draft
    └── 🟢 Then
        └── 🟢 And
            ├── 🟢 Not (🔴 This label is applied to pull request: review/triage-pending)
            └── 🟢 At least 1 user(s) of the team tech-staff reviewed pull request

Manual Checks
**IGNORE** the bot requirements for this PR (force green CI check)

If

🟢 Condition met
└── 🟢 On every pull request

Can be checked by

  • Any user with comment edit permission

Copy link

codecov bot commented Jul 11, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

📢 Thoughts on this report? Let us know!

@alexiscolin alexiscolin marked this pull request as ready for review July 15, 2025 06:14
Copy link
Member

@gfanton gfanton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, can you take the opportunity to move the extensions initialization into markdown? (check my comment)

@alexiscolin alexiscolin requested a review from gfanton July 17, 2025 05:24
@moul moul merged commit 391046e into gnolang:master Jul 18, 2025
53 of 54 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in 💪 Bounties & Worx Jul 18, 2025
moul added a commit to thehowl/gno that referenced this pull request Jul 19, 2025
This PR aims to activate the default Goldmark missing extensions. It
enhances the markdown rendering capabilities in gnoweb:

## Changes Made

- Added extension.TaskList to enable task list support (GitHub-style
task lists)
- Added extension.Footnote to enable footnote support (Supports
academic-style footnotes)
- Both extensions are now included in the default markdown renderer
configuration

## Syntax

- **TaskList**: Uncommented and enhanced the existing task list section
with examples showing both completed (`- [x]`) and pending (`- [ ]`)
tasks
- **Footnote**: Added a new comprehensive section demonstrating footnote
usage with proper syntax: `[^1]` for references and `[^1]`: content for
definitions

## Impact

- Low risk: These are official Goldmark extensions with stable APIs
- Backward compatible: No breaking changes to existing markdown content
- Enhancement: Adds features we lost with winter gnoweb updates.

## UI Improvements Added
### TaskList Enhancements

- **Gno-Styled Checkboxes**: Tasks are now styled in coherence with
future form inputs from PR gnolang#4438
- Disabled checkboxes are rendered in a different style 
  
### Footnote UX Improvements

- **Enhanced Anchor Positioning:** Better positioning of superscript
footnote references
- **Improved Scroll Behavior:** Fixed margin scroll top to properly view
anchors under the header
- **Visual Highlighting:** Footnotes are now highlighted with background
and subtle emphasis during scroll (visual feedback)

## Screenshots

<img width="1049" height="921" alt="Capture d’écran 2025-07-15 à 16 04
03"
src="https://github.com/user-attachments/assets/e2fae2b3-b1ce-4793-8d11-4285e012853e"
/>
<img width="1055" height="168" alt="Capture d’écran 2025-07-15 à 15 26
55"
src="https://github.com/user-attachments/assets/51a4c9ab-f53c-4af3-87ef-c9192018b9dd"
/>

---------

Co-authored-by: Manfred Touron <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🌍 gnoweb Issues & PRs related to gnoweb and render 📦 ⛰️ gno.land Issues or PRs gno.land package related 🧾 package/realm Tag used for new Realms or Packages.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants