Skip to content

Themes/Tweaks browser, sharing/import, custom themes/tweaks, and repo#633

Draft
7w1 wants to merge 21 commits intodevfrom
feat/theme-edits-v2
Draft

Themes/Tweaks browser, sharing/import, custom themes/tweaks, and repo#633
7w1 wants to merge 21 commits intodevfrom
feat/theme-edits-v2

Conversation

@7w1
Copy link
Copy Markdown
Member

@7w1 7w1 commented Apr 2, 2026

Description

Still a WIP, I'll update this PR description with more details later.

Pulls themes and tweaks from https://github.com/SableClient/themes and allows basic searching and filtering in the themes settings
Theme links that end in *.preview.sable.css from the official repo will generate embeds, optional setting to allow generating embeds for any *.preview.sable.css file.
In chat previews are generated with extracted css values and are safe from injection. Full theme files will load the entire file, and are vulnerable to injection, hence the official safe repo. Third party themes sent in chat show a prominent banner making the risks clear

Mitigates #492 ?
Fixes #71
Fixes #617 (via tweak in theme repo)

image image

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change - disables themes, but there's a migration modal that prompts the user with 1 click to redownload and enable their existing theme(s).
  • This change requires a documentation update

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings

AI disclosure:

  • Partially AI assisted (clarify which code was AI assisted and briefly explain what it does).
  • Fully AI generated (explain what all the generated code does in moderate detail).

AI was used to write the code for parsing and extracting data from the raw css files/links and dynamically populate the lists as well as develop the migration system for current themes. Tests were AI generated.
All code has (or will be) thoroughly reviewed by me by the time this PR is ready.

@Septicity
Copy link
Copy Markdown
Contributor

I figure that proper custom CSS theming will require more thorough CSS-visible class names for each component; is that part of the plans for this, or would that be better accomplished with a tracking issue for another time?

@7w1
Copy link
Copy Markdown
Member Author

7w1 commented Apr 3, 2026

I figure that proper custom CSS theming will require more thorough CSS-visible class names for each component; is that part of the plans for this, or would that be better accomplished with a tracking issue for another time?

I think that's better as a separate issue.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 4, 2026

⚠️ Missing changeset

This pull request does not include a changeset. Please add one before requesting review so the change is properly documented and included in the release notes.

How to add a changeset:

  1. Run pnpm run document-change (interactive) and commit the generated file, or
  2. Manually create .changeset/<descriptive-name>.md:
---
default: patch
---

Short user-facing summary of the change.

Replace patch with major, minor, patch, docs, or note as appropriate.

📖 Read more in CONTRIBUTING.md.

If this PR is internal/maintenance with no user-facing impact, a maintainer can add the internal label to skip this check.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 4, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

Status Preview URL Commit Alias Updated (UTC)
✅ Deployment successful! https://pr-633-sable.raspy-dream-bb1d.workers.dev 4b17220 pr-633 Sat, 04 Apr 2026 07:35:53 GMT

@7w1 7w1 changed the title Themes browser, sharing/import/export, custom themes, and repo Themes/Tweaks browser, sharing/import, custom themes/tweaks, and repo Apr 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Show avatars as circles Feature Request: Custom Theme Support

3 participants