CSS magicians/theme creators — standardisation of theming practices

Here are my thoughts on some key points being brought up:

Standardisation Across Themes

My Opinion

“I don’t believe it is possible to standardize CSS across themes” - No matter how I look at it there is no way around it with the nature of CSS.

“Features should probably be centralized via plugin” - I would find this to be ideal personally but it’s a big ask for Plugin Developers. I’m all for people experimenting and seeing what catches on with users with their Theme’s pure CSS implementation of features but the moment users start expecting it from other themes, it becomes an issue. I feel like there could be an effort made to help bring those ideas on as Plugins, as long as there is an individual willing to maintain it, or even pitch them as core Obsidian features.

Time intensity and difficulty of constant maintenance is something I struggle with. Despite the fact that people in this community easily being one of the most supportive I’ve ever encountered, I feel like contributing to a theme with ideas/feature requests, although a good indicator of interest for the Developer, can be a big ask depending on the Theme’s state and feature complexity. It is very hard to contribute Pull Requests for anyone willing to try and help out; even if you are well versed in CSS. Hence why, including myself, people chose to roll their own theme somewhat further adding to potential fragmentation and problems down the line.

Obsidian has already become a kitchen sink of tools, workflows and users. Understandably so! It’s a fantastic tool with a lot of freedom to do what you want with it. No wonder so many users from all types of software have migrated to it. Sadly in my opinion it’s suffering from it’s own success. Constant community effort to try and pull new functionality out of it by building up new Plugins, Themes, etc. do sort off contribute to the difficulty of maintaining it by Community Developers and I’m sure core Obsidian developers as well.

I also don’t see a Snippet Store be a viable feature besides very basic snippets specifically made to go hand in hand with the default theme only. The ever increasing speed of Obsidian’s evolution and development made by the Community already provides enough work for all Developers and this would just become yet another thing for people to complain about and developers to pour hours into supporting.

Lastly, the issue of maintaining the Legacy Editor modes. I would like to have a set timeframe for when it is planned to be dropped. It’s still a fresh change so some time to process this is definitely required. Everyone trying to maintain it in their Themes/Plugins will only amount to it taking longer for users to transition if the expectation is set that Developers will keep it going. Theming 5 separate modes is a lot to maintain and will only become more work to rip out once it’s deprecated.

Actionable Items

  • Create a resource which can be referred to when trying to tame the expectation of some users when it comes to support of features in Community Themes.
  • If a Snippet Store is created, just as @kepano pointed out, it should be gated behind Safe mode or some other clear separation to indicate to users that they can’t expect Community Themes and possibly even Community Plugins to play along nicely.
  • Timeframe for Legacy Editor’s EOL.

The Community Theme Store Needs Improvement

My Opinion

The current state of the Community Theme Store is far too basic for the utility they provide. It lacks the depth which the Community Plugins Store provides with short explanation in the Sidebar list and a whole Readme going into detail once selected. A name and a screenshot isn’t enough anymore when each theme offers unique features, might have plugin requirements, offer specific plugin support, etc.

Some way of indicating support for Community Plugins and tagging the availability of commonly demanded features from users would be nice.

I think it would be smart to have a distinction between Colour Schemes and Comprehensive Overhaul themes.

Actionable Items

  • Redesign the Community Theme Store to behave and look like the Community Plugins Store or another more information rich design.
  • Work out what the ‘requirements’ are for a Theme to fall under a Colour Scheme or Comprehensive Overhaul Theme.

Community Knowledge Centralisation (Slightly off-topic but I think still relevant)

My Opinion

Community brainpower and knowledge should have a centralised place to focus it all into. In my opinion the Obsidian Hub is the ideal place for this. The speed of progress is extremely hard to follow unless you are a dedicated Discord/Forum reader. I have no idea how @EleanorKonik manages to stay on top of it all and produce the Obsidian Roundup.

Where possible, I think we should help each other in avoiding the common pitfalls. For me one of those was not using SASS from the start and documenting my code better; now it’s a big task to rework it and make it as maintainable as possible. Obviously this might not be the case for everyone and just plain CSS will be enough for them but I’m sure this will resonate with some.

In turn this has motivated me to work on a guide for the Obsidian Hub to help others avoid this and have a better time starting out as Theme Developers or for existing Developers. It will be there for those that are interested but by no means an enforced way of doing things. Again I don’t expect everyone to do the same even if they would like to due to the time it takes to do.

Assisting each other with guides, shared knowledge and creating more opportunities to do so with e.g. events (such as Obsidian October), workshops, weekly/monthly meetups (voice calls or chat) where we focus on discussing one specific topic is what I’d like to see more of. Maybe a separate section of the Obsidian Discord or Obsidian Community Talks would be ideal for this; Would prefer to avoid making another Discord server to not fragment further and avoid ‘echo chamber’ effect.

Discord is already a lot to parse through and there is also the forum. A lot of questions and answers, valuable information and in depth discussions get lost (on Discord specifically) but they happen there due to convenience of a live chat as opposed to the forum imo. I’d love to have community process to assist in documenting them.

Actionable Items

Think of a workflow for the Community Ideas to become Community Knowledge. e.g.
1. Pull out good ideas brought up in the Forum/Discord .
2. Create a thread on Discord or a Meta post on the Forum to further discuss the idea.
3. If it becomes something great, work on dedicating some time for a meetup/discussion panel to develop on it and work out Actionable Items from it.
4. Produce content about the idea which is easily accessible by the community (Obsidian Hub for Guides and Information, Plugins/Theme Enhancements available in the Obsidian Community stores, video tutorials from YouTube creators, etc.)


P.S. Hopefully none of this comes across in a negative or too demanding way. I just feel like there are clear areas that could do with improving, albeit I’m not super confident in the exact ways to achieve said improvements. There might be other, better Actionable Items some of you can pull from what I said hence why I chose to share my thoughts.

Also sorry for a wall of text :sweat_smile:

22 Likes