https://github.com/chrisgrieser/obsidian-theme-design-utilities

Some utilities and Quality-of-Life features for designers of Obsidian themes.

https://github.com/chrisgrieser/obsidian-theme-design-utilities

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: researchgate.net
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.3%) to scientific vocabulary

Keywords

obsidian obsidian-md obsidian-plugin obsidian-theme

Keywords from Contributors

archival projection alfred-workflow pdf-summarization reference-management text-object interactive generic sequences observability
Last synced: 6 months ago · JSON representation

Repository

Some utilities and Quality-of-Life features for designers of Obsidian themes.

Basic Info
  • Host: GitHub
  • Owner: chrisgrieser
  • License: mit
  • Language: TypeScript
  • Default Branch: main
  • Homepage:
  • Size: 5.94 MB
Statistics
  • Stars: 129
  • Watchers: 4
  • Forks: 8
  • Open Issues: 1
  • Releases: 30
Topics
obsidian obsidian-md obsidian-plugin obsidian-theme
Created about 4 years ago · Last pushed 6 months ago
Metadata Files
Readme Funding License

README.md

Theme Design Utilities

Obsidian downloads Latest release

Some utilities and Quality-of-Life features for designers of Obsidian themes.

Table of contents

Commands added

Mobile emulation

Conveniently enable the mobile emulation of Obsidian, that is how Obsidian would look on mobile. This helps with styling your theme for mobile.

Cycle between all three modes

Cycles between Source Mode, Live Preview, and Reading Mode. Set a hotkey to quickly check how the theme looks in all three view modes.

Cycle through installed themes

Cycles between all installed themes. As opposed to the Theme Switcher Plugin, this does not open a modal, but rather directly switches to the next installed theme.

Theme Cycling Demo

Light/dark mode toggle

A simple command to toggle between light and dark mode. Set a hotkey to quickly change the mode of the theme.

Dark Mode Toggle Demo

Freeze obsidian

Opens the devtools and freeze interaction with Obsidian, after a small delay. During that delay, you can create fleeting elements like context menus or tooltips which stays on screen.

To unfreeze Obsidian, click the "play" button which appears at the top of Obsidian.

freezing Obsidian Demo

Toggle devtools

Opens/closes the devtools (developer console). Does the same thing as Obsidian's built-in method of opening the devtools, but being available in the command palette allows you to set a custom hotkey for it.

Garble text

Garbles all text in the whole app. "Ungarbles" elements that are hovered. This way you can share screenshots while maintaining privacy.

.foobar test class

This command adds/removes a test class .foobar to the DOM-element .app-container. This way you can quickly toggle some CSS on-and-off for debugging purposes, without having to enable/disable a snippet.

css .app-container.foobar h1 { color: red; }

Red outlines for debugging

Add red outlines to all elements. Run the command again to remove the outlines. The outlines are useful for debugging purposes, essentially serving as the CSS equivalent for console.log().

Permanent test notice

Post a notice (notification) that stays on screen until you click it. This is useful for styling notices, as they normally quickly fade away.

Screenshot 2022-01-05 22 28 09

CSS feature compatibility (chrome version)

  • Displays a notice with the current Chrome version utilized by Obsidian to render CSS. Sites like MDN or W3-Schools usually document the minimum Chrome version required for a certain CSS feature at the bottom of the feature's documentation page.
  • On iOS, Obsidian uses the Safari engine, for which the version matches the iOS version the user is using. Prevalence of iOS versions – and therefore underlying Safari versions to target – are published by Apple itself.

If you are using stylelint, you can also simply use the nifty stylelint-no-unsupported-browser-features plugin, and add this to your .stylelintrc.json:

json { "extends": ["stylelint-config-recommended"], "plugins": ["stylelint-no-unsupported-browser-features"], "rules": [ "plugin/no-unsupported-browser-features": [true, { "browsers": ["last 10 Chrome versions", "last 3 iOS versions"], "ignore": ["css-masks"], "ignorePartialSupport": true }], ] }

Show cheatsheet

Open a cheat sheet showing the Obsidian CSS classes.

Obsidian API Model

Documentation and sample notes

You can access these resources without installing the plugin.

Cheatsheets

You can get various obsidian design cheatsheets from the cheatsheets folder.

Markdown note: display your current theme colors

theme-design-utilities-current_theme.md is a markdown file that can be added to your vault to display your current theme colors.

current_theme colors note, screenshots

Markdown note and CSS snippet: play with colors

The theme-design-utilities-colorplay.md markdown note and its companion CSS snippet display colored boxes. The note should be added to your vault, and the CSS snippet to your snippet collection. You can change the colors by editing the CSS snippet, or using the Style Settings plugin.

colorplay
colors note, screenshot

Other resources for Obsidian theme designers

Obsidian plugins

Guides

Installation

This plugin is available in Obsidian's Community Plugin Browser: SettingsCommunity PluginsBrowse → Search for "Theme Design Utilities"

Build

bash npm install node .esbuild.mjs

About the developer

In my day job, I am a sociologist studying the social mechanisms underlying the digital economy. For my PhD project, I investigate the governance of the app economy and how software ecosystems manage the tension between innovation and compatibility. If you are interested in this subject, feel free to get in touch.

Buy Me a Coffee at ko-fi.com

Owner

  • Name: Chris Grieser
  • Login: chrisgrieser
  • Kind: user
  • Location: Berlin, Germany
  • Company: Technical University of Berlin

Researcher in sociology & software developer

GitHub Events

Total
  • Create event: 5
  • Issues event: 2
  • Release event: 2
  • Watch event: 21
  • Delete event: 1
  • Issue comment event: 4
  • Push event: 10
  • Pull request event: 4
Last Year
  • Create event: 5
  • Issues event: 2
  • Release event: 2
  • Watch event: 21
  • Delete event: 1
  • Issue comment event: 4
  • Push event: 10
  • Pull request event: 4

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 157
  • Total Committers: 4
  • Avg Commits per committer: 39.25
  • Development Distribution Score (DDS): 0.025
Past Year
  • Commits: 14
  • Committers: 2
  • Avg Commits per committer: 7.0
  • Development Distribution Score (DDS): 0.143
Top Committers
Name Email Commits
pseudometa 7****r 153
dependabot[bot] 4****] 2
Huajin x****p@o****m 1
Eve Le Cellier E****f 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 7
  • Total pull requests: 5
  • Average time to close issues: about 2 months
  • Average time to close pull requests: about 6 hours
  • Total issue authors: 6
  • Total pull request authors: 3
  • Average comments per issue: 1.29
  • Average comments per pull request: 1.2
  • Merged pull requests: 5
  • Bot issues: 0
  • Bot pull requests: 3
Past Year
  • Issues: 1
  • Pull requests: 3
  • Average time to close issues: 16 minutes
  • Average time to close pull requests: about 1 hour
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 3
Top Authors
Issue Authors
  • YousufSSyed (2)
  • Mara-Li (1)
  • caesiumtea (1)
  • MattWilcox (1)
  • CuteWaterBeary (1)
  • chrisgrieser (1)
Pull Request Authors
  • dependabot[bot] (4)
  • xhuajin (2)
  • Evelf (1)
Top Labels
Issue Labels
bug (3) enhancement (2)
Pull Request Labels
dependencies (4) github_actions (1)

Dependencies

package.json npm
  • @types/node ^16.11.6 development
  • @typescript-eslint/eslint-plugin ^5.2.0 development
  • @typescript-eslint/parser ^5.2.0 development
  • builtin-modules ^3.2.0 development
  • esbuild 0.13.12 development
  • obsidian ^0.12.17 development
  • tslib 2.3.1 development
  • typescript 4.4.4 development
versions.json meteor
package-lock.json npm
  • 103 dependencies
.github/workflows/obsidian-plugin-release.yml actions
  • actions/checkout v4 composite
  • actions/setup-node v1 composite
  • softprops/action-gh-release v1 composite