-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
About VSlides
Motivation
- Tech/academia slides usually focus more on the content instead of visual effects.
- Writing/maintaining/sharing contents of slides can be painful.
- Consistency of design such as color, alignment, is harder to maintain with WYSIWYG softwares (like Word vs LaTeX, see this maybe).
- Review LaTeX beamer:
- Content as source code approach, with enough features.
- It is easy to auto generate table-of-contents, references etc., with the help of LaTeX.
- The language is obsolete.
- The syntax is noisy.
- It is extremely difficult to write a custom theme. Even making small modifications to existing theme is difficult.
- Similar idea but with modern technologies: Markdown for content writing, and HTML/CSS for design.
- Review slidev:
- A solid proof-of-concept for web-based slide software. Markdown for writing contents, and HTML/CSS/Vue for logic/design.
- Feature-full. Most critical and fancy functionalities that can be implemented are implemented.
- Missing features:
- Auto TOC generation.
- Multiple slides hosting.
- Client-side rendering.
- Some design choices that I disagree with:
- Modularization: the software is not well modularized. Extending features or supporting more use cases is difficult, even painful at times. Also, the overall software tends to be more buggy.
- Configuration: too many places being configurable for an end product.
- Theming: it is difficult to create a high-quality theme for slidev, due to the complexity and inconsistencies in slidev's layout and styling systems.
- VSlides vision:
- ...
Philosophy
Comparison
v0.1 objectives
Functionality
- Support comparable functionalities than PPT/Keynote/beamer/slidev.
- Support more use cases.
- Standalone CLI, for writing and presentation.
- As a vite plugin, for hosting and viewing one or more slides (e.g. sharing lecture slides).
- In-browser, for online editing experience (e.g. to support feature preview, quick edit and export, hosting service).
- Users should make fewer decisions when using vslides.
- Works out-of-the-box. All functionalities are self-contained. No plugins. Less configuration.
- Only the best, most-obvious tools are included and supported. E.g. unocss for CSS utilities, shiki for code highlighting.
Syntax
- Stick to markdown syntax as much as possible, to avoid cluttering the main content.
- At most cases, users should not have the necessity to fallback to HTML tags.
- Insert images with sensible defaults to avoid custom
<img>s. - Centered/flex/grid layout with markdown blocks to avoid custom
<div>s.
- Extended syntax should feel similar and easy-to-use.
- Reduce the use of non-standard markdown grammar.
- Use HTML comments for vslides instructions?
- Try to be formatter-friendly. (Or implement a custom highlighter/formatter?)
Design
- Slides should be neat and clear only with default style (feat: vslides base style #3).
- Enforce an intuitive, clean and subtle UI design.
- Provide a pleasant and empowered experience for theme designers.
Product
- Logo and short description.
- Global and package READMEs.
- Website and demo.
Development
- Audit dependencies frequently. Reduce unnecessary overhead.
- E.g. remove vue-router? Or vueuse?
- Keep high maintainability.
- Clear data/state management. E.g. use pinia to manage global states?
- Grow as a serious open source project that fits the community.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels