Skip to content

Feature: Custom Color Palette Picker for SVGs - #8469

Open
pisum-sativum wants to merge 27 commits into
JhaSourav07:mainfrom
pisum-sativum:feat/custom-color-palette-picker
Open

Feature: Custom Color Palette Picker for SVGs#8469
pisum-sativum wants to merge 27 commits into
JhaSourav07:mainfrom
pisum-sativum:feat/custom-color-palette-picker

Conversation

@pisum-sativum

Copy link
Copy Markdown
Contributor

Description

Fixes #7807

Added a new ThemeSection UI component to the README generator that allows users to pick custom hex codes for the background (bg), text (text), borders (border), and icons (accent) of the generated SVGs.

The generator state and SVG URL builders were updated to pass these custom parameters across all relevant SVG components (Streak, Repo Spotlight, Articles), breaking the restriction of relying solely on preset themes.

Pillar

  • 🎨 Pillar 1 — New Theme Design
  • 📐 Pillar 2 — Geometric SVG Improvement
  • 🕐 Pillar 3 — Timezone Logic Optimization
  • 🛠️ Other (Bug fix, refactoring, docs) - Feature/UI Enhancement

Checklist before requesting a review:

  • I have read the CONTRIBUTING.md file.
  • I have tested these changes locally (localhost:3000/api/streak?user=YOUR_USERNAME).
  • I have run npm run format and npm run lint locally and resolved all errors (CI will fail otherwise).
  • My commits follow the Conventional Commits format (e.g., feat(themes): ..., fix(calculate): ...).
  • I have updated README.md if I added a new theme or URL parameter.
  • I have started the repo.
  • I have made sure that i have only one commit to merge in this PR.
  • The SVG output matches the CommitPulse "premium quality" aesthetic standard (no raw elements, smooth animations, correct fonts).
  • (Recommended) I joined the CommitPulse Discord community for contributor discussions, mentorship, and faster PR support.

Fixes JhaSourav07#6096 by preserving valid UTF-8, avoiding faulty binary text fallbacks, and adding heuristic to repair misencoded artifacts.
…owing them

Moves buffer header checks outside try/catch blocks so that failures in buffer.toString (e.g. in tests mocking the method) correctly propagate to callers. Only third-party parser failures (pdf-parse, mammoth) are silently caught. Fixes the failing error-resilience test.
…bage-chars

# Conflicts:
#	components/burnout/BurnoutRiskTable.tsx
Copilot AI review requested due to automatic review settings July 29, 2026 06:47
@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

@pisum-sativum 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 29, 2026

Copy link
Copy Markdown

This pull request adds a significant feature by allowing users to pick custom colors for SVG elements, which aligns with our previous decisions to enhance user experience through customization. For instance, the implementation of visually themed fallback SVGs for API errors and the addition of a dark/light preview background toggle both aimed to improve the visual appeal and usability of our components. This new feature will further empower users to personalize their SVGs. Thank you for your contribution, and I look forward to your updates!

@retenta-bot retenta-bot Bot changed the title Feat/custom color palette picker Feature: Custom Color Palette Picker for SVGs Jul 29, 2026
@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 @JhaSourav07 I have made the necessary changes. Kindly check and merge with appropriate labels.

@github-actions github-actions Bot added the status:blocked This PR is blocked due to a failing CI check. label Jul 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🚨 Hey @pisum-sativum, the CI Pipeline is failing on this PR and it has been marked as status:blocked.

Please fix the issues before this can be reviewed. Here's how:

1. Run checks locally before pushing:

npm run format:check   # Check Prettier formatting
npm run lint           # Run ESLint
npm run typecheck      # TypeScript type check
npm run test           # Run unit tests (Vitest)
npm run build          # Verify production build passes

2. Auto-fix common issues:

npm run format         # Auto-fix formatting with Prettier
npm run lint -- --fix  # Auto-fix lint errors where possible

3. Check the full failure log here:
👉 View CI Run

Once you push a fix and the CI passes, the status:blocked label will be removed automatically. 💪

@Aamod007 Aamod007 added level:intermediate Moderate complexity tasks type:feature New features, additions, or enhancements mentor:Aamod007 labels Jul 31, 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.

A custom color palette picker is going to be super popular for the SVGs! Unfortunately, the CI pipeline is failing (\Format · Lint · Typecheck · Test). Please resolve the typecheck or linting errors so we can merge this!

@Aamod007

Copy link
Copy Markdown
Collaborator

Hi! Could you please re-run the CI pipeline to see if the recent failures resolve? Let us know if you need any help fixing the build errors!

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

Hi! Could you please re-run the CI pipeline to see if the recent failures resolve? Let us know if you need any help fixing the build errors!

@Aamod007 I still can't solve the CI issue ;( Kindly check and merge if possible or if any change is needed let me know .

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 @JhaSourav07 Pls check and merge.
image

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 Any updates?

@Aamod007 Aamod007 added level:advanced Complex contributions involving architecture, optimization, or significant feature work quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. labels Aug 6, 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.

Great feature! Adding a custom color palette picker gives users way more flexibility to match their personal branding or website themes, rather than relying solely on the built-in presets. The UI implementation looks clean and propagates well to the generator outputs. Approved!

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 There is a merge conflict do i need to resolve it?

…ette-picker

# Conflicts:
#	lib/validations.ts
@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 @JhaSourav07 I have resolved the merge conflict pls check and merge asap

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@Aamod007 @JhaSourav07 pls merge this pr asap
image

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@JhaSourav07 could you please merge all the PRs I've worked on? I've been requesting this for several days now but they are still pending. I would really appreciate it if you could review and merge them as soon as possible. Thank you!

@pisum-sativum

Copy link
Copy Markdown
Contributor Author

@JhaSourav07 Any update?

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Hey @pisum-sativum, this pull request has been inactive for 3 days. It will be automatically closed in 2 days if no further activity occurs.

If you are still working on this, please push your latest changes or leave a comment to keep it active.

3 similar comments
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Hey @pisum-sativum, this pull request has been inactive for 3 days. It will be automatically closed in 2 days if no further activity occurs.

If you are still working on this, please push your latest changes or leave a comment to keep it active.

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Hey @pisum-sativum, this pull request has been inactive for 3 days. It will be automatically closed in 2 days if no further activity occurs.

If you are still working on this, please push your latest changes or leave a comment to keep it active.

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Hey @pisum-sativum, this pull request has been inactive for 3 days. It will be automatically closed in 2 days if no further activity occurs.

If you are still working on this, please push your latest changes or leave a comment to keep it active.

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

Labels

gssoc:needs-rebase level:advanced Complex contributions involving architecture, optimization, or significant feature work level:intermediate Moderate complexity tasks mentor:Aamod007 quality:clean PR follows clean coding practices, proper formatting, documentation, and maintainability standards. status:blocked This PR is blocked due to a failing CI check. type:feature New features, additions, or enhancements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Custom Color Palette Picker for SVGs

4 participants