Top Related Projects
The HTML Presentation Framework
It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com.
A simple, in-browser, markdown-driven slideshow tool.
The entrance repository of Markdown presentation ecosystem
PDF exporter for HTML presentations
Quick Overview
WebSlides is an open-source HTML presentation framework that allows users to create beautiful, responsive presentations using HTML, CSS, and JavaScript. It offers a simple and intuitive way to create slideshows for the web, with a focus on clean design and easy customization.
Pros
- Easy to use and customize, with a straightforward HTML structure
- Responsive design that works well on various devices and screen sizes
- Rich set of components and layouts for creating diverse slide designs
- Built-in navigation and keyboard shortcuts for smooth presentation control
Cons
- Limited advanced animation capabilities compared to some proprietary presentation software
- Requires basic knowledge of HTML and CSS for customization
- May have a steeper learning curve for users unfamiliar with web technologies
- Less extensive documentation compared to more established presentation frameworks
Code Examples
- Creating a basic slide:
<section>
<h1>Welcome to WebSlides</h1>
<p>This is a simple slide example.</p>
</section>
- Adding a background image to a slide:
<section class="bg-image" style="background-image:url('path/to/image.jpg')">
<h1>Slide with Background Image</h1>
</section>
- Creating a grid layout:
<section>
<div class="grid vertical-align">
<div class="column">
<h3>Column 1</h3>
<p>Content for the first column.</p>
</div>
<div class="column">
<h3>Column 2</h3>
<p>Content for the second column.</p>
</div>
</div>
</section>
Getting Started
To start using WebSlides, follow these steps:
- Download the WebSlides files or include them via CDN:
<link rel="stylesheet" href='https://cdn.jsdelivr.net/npm/webslides@latest/static/css/webslides.css'>
<script defer src='https://cdn.jsdelivr.net/npm/webslides@latest/static/js/webslides.js'></script>
- Create your HTML structure:
<!DOCTYPE html>
<html>
<head>
<title>My WebSlides Presentation</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href='https://cdn.jsdelivr.net/npm/webslides@latest/static/css/webslides.css'>
</head>
<body>
<main role="main">
<article id="webslides">
<!-- Your slides go here -->
<section>
<h1>Hello WebSlides</h1>
</section>
<!-- More slides... -->
</article>
</main>
<script defer src='https://cdn.jsdelivr.net/npm/webslides@latest/static/js/webslides.js'></script>
<script>
window.ws = new WebSlides();
</script>
</body>
</html>
- Add more slides and customize as needed.
Competitor Comparisons
The HTML Presentation Framework
Pros of reveal.js
- More extensive documentation and larger community support
- Greater flexibility with plugins and customization options
- Built-in support for Markdown content
Cons of reveal.js
- Steeper learning curve for beginners
- Requires more setup and configuration for advanced features
- Larger file size, which may impact load times
Code Comparison
reveal.js:
<div class="reveal">
<div class="slides">
<section>Slide 1</section>
<section>Slide 2</section>
</div>
</div>
WebSlides:
<article id="webslides">
<section>Slide 1</section>
<section>Slide 2</section>
</article>
Summary
Both reveal.js and WebSlides are powerful tools for creating web-based presentations. reveal.js offers more advanced features and customization options, making it suitable for complex presentations and experienced users. WebSlides, on the other hand, provides a simpler, more intuitive approach that may be preferable for beginners or those seeking a quick setup.
The choice between the two depends on the specific needs of the project, the user's experience level, and the desired complexity of the presentation. reveal.js is better suited for feature-rich, highly customized presentations, while WebSlides excels in simplicity and ease of use for straightforward slideshows.
It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com.
Pros of impress.js
- More flexible and powerful for creating complex, non-linear presentations
- Supports 3D transformations and transitions
- Highly customizable with extensive API and plugin system
Cons of impress.js
- Steeper learning curve due to its complexity
- Requires more manual coding and setup for each presentation
- May have compatibility issues with older browsers
Code Comparison
impress.js:
<div id="impress">
<div class="step" data-x="0" data-y="0">Slide 1</div>
<div class="step" data-x="1000" data-y="500" data-rotate="90">Slide 2</div>
</div>
<script>impress().init();</script>
WebSlides:
<article id="webslides">
<section>Slide 1</section>
<section>Slide 2</section>
</article>
<script>new WebSlides();</script>
Key Differences
- impress.js uses data attributes for positioning and transformations, while WebSlides relies on simpler HTML structure
- impress.js offers more control over individual slide positioning and effects
- WebSlides provides a more straightforward, linear presentation structure out of the box
Both libraries have their strengths, with impress.js excelling in creating unique, non-linear presentations, and WebSlides offering a simpler approach for traditional slide decks.
A simple, in-browser, markdown-driven slideshow tool.
Pros of remark
- Uses Markdown for content creation, making it easier for developers to write presentations
- Highly customizable with CSS and JavaScript
- Supports in-browser live editing
Cons of remark
- Steeper learning curve for non-technical users
- Less visually polished out-of-the-box compared to WebSlides
- Requires more setup and configuration for advanced features
Code Comparison
remark:
class: center, middle
# My Presentation
---
## Slide 1
- Point 1
- Point 2
WebSlides:
<section>
<h1>My Presentation</h1>
</section>
<section>
<h2>Slide 1</h2>
<ul>
<li>Point 1</li>
<li>Point 2</li>
</ul>
</section>
Summary
remark is a powerful, developer-friendly tool that uses Markdown for creating presentations. It offers great flexibility and customization options but may require more technical knowledge to set up and use effectively. WebSlides, on the other hand, provides a more visually appealing out-of-the-box experience with easier setup for non-technical users, but may be less flexible for advanced customization.
The entrance repository of Markdown presentation ecosystem
Pros of Marp
- Supports Markdown syntax for creating presentations, making it easier for developers and technical users
- Offers multiple output formats including HTML, PDF, and PPTX
- Provides a CLI tool for easy conversion and automation
Cons of Marp
- Less visually appealing out-of-the-box compared to WebSlides
- Requires more setup and configuration for advanced features
- Limited built-in themes and design options
Code Comparison
WebSlides:
<section>
<h1>Title</h1>
<p>Content</p>
</section>
Marp:
---
marp: true
---
# Title
Content
Summary
Marp is ideal for developers who prefer working with Markdown and need multiple output formats. It offers simplicity and flexibility but may require more effort for visually stunning presentations. WebSlides, on the other hand, provides a more visually appealing solution out-of-the-box with HTML and CSS, making it suitable for designers and those who prioritize aesthetics in their presentations.
PDF exporter for HTML presentations
Pros of Decktape
- Supports multiple presentation frameworks (HTML, reveal.js, impress.js, etc.)
- Generates high-quality PDF exports of web presentations
- Offers a command-line interface for easy automation and integration
Cons of Decktape
- Requires Node.js and additional dependencies to run
- Limited to exporting existing presentations, not creating new ones
- May have issues with complex animations or dynamic content
Code Comparison
WebSlides:
<section>
<h1>Title</h1>
<p>Content</p>
</section>
Decktape (command-line usage):
decktape reveal https://example.com/presentation.html output.pdf
Summary
WebSlides is a framework for creating HTML presentations, while Decktape is a tool for exporting web-based presentations to PDF. WebSlides offers more flexibility in creating presentations from scratch, whereas Decktape excels in generating high-quality PDF exports from various presentation frameworks. WebSlides is more suitable for developers who want to create custom presentations, while Decktape is ideal for users who need to convert existing web presentations to PDF format for distribution or printing.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
WebSlides = Create stories with Karma
Finally, everything you need to make HTML presentations, landings, and longforms in a beautiful way. Just a basic knowledge of HTML and CSS is required. Designers, marketers, and journalists can now focus on the content. â https://webslides.tv/demos.
Download
Simply choose a demo and customize it in seconds. Latest version: webslides.tv/webslides-latest.zip.
What's in the download?
The download includes demos and images (devices and logos). All content is for demo purposes only. Images are property of their respective owners.
webslides/
âââ index.html
âââ css/
â âââ base.css
â âââ colors.css
â âââ svg-icons.css (optional)
âââ js/
â âââ webslides.js
â âââ svg-icons.js (optional)
âââ demos/
âââ images/
Features
- Navigation (horizontal and vertical sliding): remote presenters, touchpad, keyboard shortcuts, and swipe.
- Slide counter.
- Permalinks: go to a specific slide.
- Autoslide.
- Click to nav.
- Simple CSS alignments. Put content wherever you want (vertical centering...)
- 40+ components: background images/videos, quotes, cards, covers...
- Flexible blocks with auto-fill and equal height.
- Fonts: Roboto, Maitree (Serif), and San Francisco.
- Vertical rhythm (use multiples of 8).
Markup
- Code is clean and scalable. It uses intuitive markup with popular naming conventions. There's no need to overuse classes or nesting.
- Each parent
<section>
in the#webslides
element is an individual slide.
<article id="webslides">
<section>
<h1>Slide 1</h1>
</section>
<section class="bg-black aligncenter">
<!-- .wrap = container 1200px -->
<div class="wrap">
<h1>Slide 2</h1>
</div>
</section>
</article>
Vertical Sliding
<article id="webslides" class="vertical">
CSS Syntax (classes)
- Typography:
.text-landing
,.text-data
,.text-intro
... - Background Colors:
.bg-primary
,.bg-apple
,.bg-blue
... - Background Images:
.background
,.background-center-bottom
... - Cards:
.card-50
,.card-40
... - Flexible Blocks:
.flexblock.clients
,.flexblock.metrics
...
Extensions
You can add:
- Unsplash photos
- animate.css
- particles.js
- Animate on scroll (Useful for longform articles)
- pt
Dive In!
Credits
- WebSlides was created by @jlantunez using Cactus.
- Javascript: @Belelros and @LuisSacristan.
- Based on SimpleSlides, by @JennSchiffer.
Top Related Projects
The HTML Presentation Framework
It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com.
A simple, in-browser, markdown-driven slideshow tool.
The entrance repository of Markdown presentation ecosystem
PDF exporter for HTML presentations
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot