Skip to content

New Default Theme for Slidev #2128

Open
@sghuang19

Description

@sghuang19

Evolving Slidev's Default Theme 🎨

There have been some discussions in the community regarding a new default theme for Slidev. I'm documenting them here to see what the maintenance team thinks.

Slidev users, feel free to this issue and join discussion to show your support for this initiative!

Current Challenges

Some basic styling issues need attention:

  • Inconsistent typography
  • Excessive top margins in headings
  • Improper line spacing in lists
  • And many more
  • And these problems are even worse in some builtin layouts

Why This Matters

  • Community Growth: A polished default theme is crucial for adoption. New users should be able to create professional-looking presentations without additional configuration. I'll be a lot more confident to recommend Slidev to others if there's a better default.
  • User Experience: Even experienced developers shouldn't need to create custom themes for basic presentations.

We should prioritize achieving a polished default theme before enforcing strict change policies. Current limitations shouldn't prevent necessary improvements.

Potential Concerns

As @kermanx mentioned in Discord server:

One problem is that many slides projects are specifying "@slidev/theme-default": "latest" in package.json, which makes it much harder to have breaking changes in themes

However, I believe this can be addressed by one or more of the following:

  • Give the new default theme a new name. The default theme doesn't have to be named "default". e.g. landscape for Hexo, and Minima for Jekyll.
  • Emit a prompt when new version of the theme is used, for users to roll back to previous version, if the new appearance is not ideal.

It's also worth noting that, such upgrades will only affect users who:

  • Specified @latest in version, AND
  • Updated their dependencies, or reinstalled the packages, AND
  • Have customized themes, AND
  • The customized theme depends on the default theme (instead of any other theme), AND
  • The customized theme is messed up by new version of default theme

Proposed Solution

Launch a new v1.0.0 of the default theme with:

  • Carefully considered design choices
  • Minimalist and neutral aesthetic
  • Optimized for presentations
  • Proper spacing and typography
  • Zero-config excellence

Alternatives

  • Create a new theme with a different name, and adopt it as default, once it's matured.
  • Create an addon as a patch for the current default theme, with extra CSS rules to "fix" the appearance.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions