Skip to content

feat: Enhance Burnout & Sustainability Sentinel with Export & Download Features (#8216)#8258

Merged
JhaSourav07 merged 1 commit into
JhaSourav07:mainfrom
dinesh9997:feat/burnout-export-download
Jul 23, 2026
Merged

feat: Enhance Burnout & Sustainability Sentinel with Export & Download Features (#8216)#8258
JhaSourav07 merged 1 commit into
JhaSourav07:mainfrom
dinesh9997:feat/burnout-export-download

Conversation

@dinesh9997

Copy link
Copy Markdown
Contributor

Description

Resolves #8216.

This PR introduces structured export and download options (JSON, Markdown, PDF, Copy Summary, and direct Share Link with query parameter support) to the Burnout & Sustainability Sentinel (/burnout-analyzer).

Key Enhancements & Features:

  1. Download as JSON: Downloads raw structured audit data (report object) as a formatted JSON file (<owner>-<repo>-burnout-report.json).
  2. Export as Markdown: Generates a clean, comprehensive Markdown report detailing the Sustainability Score, Bus Factor, contributor workload risk breakdown, inactivity alerts, and AI recommendations.
  3. Copy Share Link: Copies a direct shareable URL containing repository search parameters (/burnout-analyzer?owner={owner}&repo={repo}).
  4. Copy Markdown Summary: Copies raw Markdown report text directly to clipboard.
  5. Download as PDF: Retains PDF report generation.
  6. Toast Notifications: Added animated notification feedback using Framer Motion on every export download/copy event.
  7. URL Parameter Auto-Fetch: Wrapped page in <Suspense> to auto-trigger analysis when landing on URLs with query parameters (/burnout-analyzer?owner=facebook&repo=react) and sync address bar state seamlessly.

Target Files Modified:

  • app/burnout-analyzer/page.tsx
  • app/burnout-analyzer/page.test.tsx
  • components/burnout/DownloadReportMenu.tsx
  • components/burnout/DownloadReportMenu.test.tsx

Verification & Testing

  • Unit Tests: Ran npx vitest run app/burnout-analyzer/page.test.tsx components/burnout/DownloadReportMenu.test.tsx10 / 10 tests passed.
  • TypeScript Check: Ran npx tsc --noEmit0 errors.
  • Linting: Passed eslint --fix and prettier pre-commit checks cleanly.

GSSoC 2026 Contribution

Copilot AI review requested due to automatic review settings July 22, 2026 11:38
@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

@dinesh9997 is attempting to deploy a commit to the jhasourav07's projects Team on Vercel.

A member of the Team first needs to authorize it.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@retenta-bot

retenta-bot Bot commented Jul 22, 2026

Copy link
Copy Markdown

This pull request introduces significant enhancements to the Burnout & Sustainability Sentinel by adding structured export and download options. It aligns with previous decisions to improve user experience through export capabilities, similar to the enhancements made for the Customizer generator page. These features will provide users with more flexibility in how they access and share their data. Thank you for your contribution!

@retenta-bot retenta-bot Bot changed the title feat: Add Export & Download functionality (JSON / Markdown / Share Link) to Burnout & Sustainability Sentinel (#8216) feat: Enhance Burnout & Sustainability Sentinel with Export & Download Features (#8216) Jul 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📦 Next.js Bundle Size Report (Gzipped Sizes)

Asset PR Size Base Size Difference Status
static/chunks/130-[hash].js - 3.04 KB -3.04 KB (-100.00%) 🗑️ Deleted
static/chunks/4800-[hash].js 3.25 KB - +3.25 KB (++100%) 🆕 New
static/chunks/app/burnout-analyzer/page-[hash].js 10.64 KB 10.02 KB +0.61 KB (+6.12%) 🔴 Regression

📊 Summary of Totals

Category PR Size Base Size Difference
Total JS 3989.00 KB 3985.28 KB +3.72 KB (+0.09%)
Total CSS 331.41 KB 331.41 KB 0 B

@Aamod007 Aamod007 added level:beginner Small changes Usually isolated fixes or simple UI/text updates. quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. type:feature New features, additions, or enhancements mentor:Aamod007 labels Jul 23, 2026

@Aamod007 Aamod007 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This is a fantastic addition to the Burnout Sentinel! Adding more export options like JSON and a share link makes the tool much more versatile. The UI polish with the toast notifications also significantly improves the user experience.

Everything looks great and the checks are passing!

Label Justification:

  • \level:beginner: Assigned based on 1 file changed (enhancing the download menu component).
  • \quality:clean: Clean React state management for the toast notifications and clear, readable component structure.
  • \ ype:feature: Adds new export and sharing capabilities to the report menu.
  • \mentor:Aamod007: Assigned as required.

@JhaSourav07 JhaSourav07 added the gssoc:approved PR has been reviewed and accepted for valid contribution points label Jul 23, 2026
@JhaSourav07
JhaSourav07 merged commit 880c6be into JhaSourav07:main Jul 23, 2026
10 of 11 checks passed
@github-actions github-actions Bot added this to the GSSoC 2026 milestone Jul 23, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🎉 Congratulations @dinesh9997! Your PR has been successfully merged. 🚀

Thank you for contributing to CommitPulse. Your work helps us build a better tool for the community.

⚠️ Important for GSSoC Contributors:
You are strictly advised to join our Discord Server as it is mandatory for all GSSoC participants. All important announcements, point claims, and community discussions happen there.

Keep building! 💻✨

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc:approved PR has been reviewed and accepted for valid contribution points level:beginner Small changes Usually isolated fixes or simple UI/text updates. mentor:Aamod007 quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. type:feature New features, additions, or enhancements

Projects

None yet

4 participants