Add default favicon and plugin-style customisation - #2
Merged
Conversation
- Embeds a default SVG favicon (green task-list icon) as a data URI in <head> - Adds connectPluginsFolder(): uses showDirectoryPicker() to scan a folder for favicon.svg/png/ico and theme.css, loading both automatically — one click to wire up all plugin overrides at once - Adds pickFavicon() for manual single-file favicon override - Persists custom favicon to localStorage (mb-favicon) like mb-custom-css - Adds + Plugins, + CSS, + Icon buttons in the tab bar; all hidden on browsers without File System Access API https://claude.ai/code/session_017MbNtnRDwpq7MzUco6XKcU
openBoard() now uses showDirectoryPicker() so the app has access to the
project folder. After picking a directory it:
- Scans for .md files; opens directly if one, shows an inline picker if many
- Looks for a .mbconfig/ subfolder and reads favicon.svg/png/ico and
theme.css from it automatically — no extra step needed
Per-board plugins: each BOARDS entry gains dirHandle and plugins fields.
switchTab() calls applyBoardPlugins() on switch, so favicon and theme track
the active board. showConnect() restores global localStorage values when
all boards are closed.
The manual + Plugins button is removed (replaced by automatic detection).
+ CSS and + Icon remain as global overrides. connectPluginsFolder() removed.
.mbconfig structure:
project/
board.md
.mbconfig/
favicon.svg (or .png / .ico / .jpg)
theme.css
https://claude.ai/code/session_017MbNtnRDwpq7MzUco6XKcU
…y-first open - README: open flow now picks a project folder; new .mbconfig section with folder structure, per-project favicon/theme docs, and version-control note; Features list updated; Custom themes and Custom favicon sections added - CLAUDE.md: updated line numbers, BOARDS struct (dirHandle, plugins fields), Key Functions table (openBoard, loadPluginsFromDir, applyBoardPlugins, showMdPicker, setFavicon, pickFavicon, clearFavicon), new Plugin system section - CONTRIBUTING.md: updated line number ranges; note on plugin system conventions https://claude.ai/code/session_017MbNtnRDwpq7MzUco6XKcU
Added + Icon button in a previous commit, bringing the total .theme-btn count from 6 to 7 (4 built-in + Custom hidden + + CSS + + Icon). https://claude.ai/code/session_017MbNtnRDwpq7MzUco6XKcU
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
favicon.svg/png/ico and theme.css, loading both automatically — one click to
wire up all plugin overrides at once
without File System Access API
https://claude.ai/code/session_017MbNtnRDwpq7MzUco6XKcU