All Projects → tasmo → reveal-jekyll

tasmo / reveal-jekyll

Licence: MIT license
Online presentation for GitHub Pages and Jekyll in Markdown using reveal.js with a Solarized Color Theme

Programming Languages

CSS
56736 projects
HTML
75241 projects
SCSS
7915 projects

Projects that are alternatives of or similar to reveal-jekyll

Edi
Edi - The open source text editor IDE based on AvalonDock and AvalonEdit
Stars: ✭ 220 (+228.36%)
Mutual labels:  light-theme, dark-theme
ColorPickerLib
A WPF/MVVM implementation of a themeable color picker control.
Stars: ✭ 44 (-34.33%)
Mutual labels:  light-theme, dark-theme
NumericUpDownLib
Implements numeric up down WPF controls to edit/display values (byte, integer, short, ushort etc.) with a textbox and optional up/down arrow (repeat) buttons. Value editing is possible by dragging the mouse vertically/horizontally, clicking up/down buttons, using up/down or left right cursor keys, spinning mousewheel on mouseover, or editing th…
Stars: ✭ 68 (+1.49%)
Mutual labels:  light-theme, dark-theme
Windows Auto Night Mode
Automatically switches between the dark and light theme of Windows 10 and Windows 11
Stars: ✭ 3,375 (+4937.31%)
Mutual labels:  light-theme, dark-theme
vuepress-theme-ououe
A blog theme for VuePress
Stars: ✭ 77 (+14.93%)
Mutual labels:  light-theme, dark-theme
Firefox Gnome Theme
A theme for Firefox 57+ matching GNOME Adwaita.
Stars: ✭ 179 (+167.16%)
Mutual labels:  light-theme, dark-theme
theme-collection
A collection of themes for Node-RED
Stars: ✭ 43 (-35.82%)
Mutual labels:  light-theme, dark-theme
Adonis Ui
Lightweight UI toolkit for WPF applications offering classic but enhanced windows visuals
Stars: ✭ 878 (+1210.45%)
Mutual labels:  light-theme, dark-theme
vuepress-theme-default-prefers-color-scheme
add prefers-color-scheme for vuepress default theme
Stars: ✭ 51 (-23.88%)
Mutual labels:  light-theme, dark-theme
vscode-theme-gruvbox-minor
Gruvbox theme for Visual Studio Code
Stars: ✭ 17 (-74.63%)
Mutual labels:  light-theme, dark-theme
Gatsby Starter Hello Friend
Pretty basic starter for Gatsby that covers all of the essentials. All you have to do is start typing!
Stars: ✭ 162 (+141.79%)
Mutual labels:  light-theme, dark-theme
fsc
A set of themeable WPF File System Controls similar to some parts of Windows (7-10) Explorer
Stars: ✭ 66 (-1.49%)
Mutual labels:  light-theme, dark-theme
St Theme Freesia
Freesia theme for Sublime Text 3. (Unmaintained.)
Stars: ✭ 108 (+61.19%)
Mutual labels:  light-theme, dark-theme
Gruvbox
🎨 Sublime Text themes & color schemes with pastel 'retro groove' colors
Stars: ✭ 191 (+185.07%)
Mutual labels:  light-theme, dark-theme
Elrodeo Vim Colorscheme
Dark low-contrast color scheme for Vim
Stars: ✭ 32 (-52.24%)
Mutual labels:  light-theme, dark-theme
Startpage
New revamped and improved Startpage, now with Dark Mode support!
Stars: ✭ 35 (-47.76%)
Mutual labels:  light-theme, dark-theme
Sweet
Light and dark colorful Gtk3.20+ theme
Stars: ✭ 703 (+949.25%)
Mutual labels:  light-theme, dark-theme
Snippetstore
🎉 A snippet management app for developers 🚀
Stars: ✭ 762 (+1037.31%)
Mutual labels:  light-theme, dark-theme
markdownreveal
A tool for creating presentations with simple Markdown notation.
Stars: ✭ 34 (-49.25%)
Mutual labels:  presentation, reveal-js
paddy-color-theme
A very detailed VS Code color theme with earthy tones and many background options for all ye badass hackers. 🍁
Stars: ✭ 29 (-56.72%)
Mutual labels:  light-theme, dark-theme

reveal-jekyll

Transforms Markdown files into presentation slides using reveal.js and Jekyll. The theme is based on Solarized Colors (by Ethan Schoonover) containing a light and a dark theme.
reveal-jekyll is ready for GitHub Pages :octocat:.

Build Status

Try the DEMO presentation (how to use Jekyll written in German).

Get reveal-jekyll

Hosting on Github Pages

Follow the instructions on get started with GitHub Pages.

As a User or Organization Site

To set up a user or organization site https://${yourname}.github.io/, fork reveal-jekyll and name your fork with your user or organization name like ${yourname}.github.io. Your site will build off the master branch.

As a Project Site

To set up a project site https://${yourname}.github.io/${projectname}:

  • Fork as above, but name your fork with whatever ${projectname} you want.
  • Your site will build from the gh-pages branch, so you should set that as the default branch.
  • In _config.yml in your gh-pages branch, change baseurl: "" to baseurl: /${projectname}. This is needed to construct asset include and internal link URLs correctly when you are serving your site from a non-root path.

For an Existing Repository

  • clone your repository
  • go into it
  • add reveal-jekyll as an upstream remote
  • create an empty branch named gh-pages
  • delete all cached files of new gh-pages branch from git
  • clean the directory from uncached files
  • merge reveal-jekyll/master with your ${repository}/gh-pages
git clone [email protected]/${yourname}/${repository}.git
cd ${repository}
git remote add upstream https://github.com/tasmo/reveal-jekyll.git
git checkout --orphan gh-pages
git rm --cached -r .
git clean -fdx
git merge upstream/master

Local Jekyll

Install RubyGems for your system.

Clone reveal-jekyll with submodule reveal.js (recommended):

git clone --recursive --depth 1 https://github.com/tasmo/reveal-jekyll.git

…or just download the zip file.

Make sure you have a Gemfile in the root of your project containing at least:

source "https://rubygems.org"

gem 'github-pages'

Install Bundler and the dependencies:

gem install bundler \
bundle install

Write Your Slides

Put your Markdown slides in the _posts folder like in any Jekyll instance.
Name the files in numbered order or dated following a pattern like YEAR-MONTH-DAY-TITLE.md:

2014-1-1-start.md
2014-1-1-intro.md
…
2014-3-2-third-topic-second-slide.md
…
2014-9-8-end.md
2014-9-9-very-last-slide.md

Write the slide's header in Front-matter and put the Markdown formatted content below. In the header you need at least the layout: slide attribute:

---
layout: slide
title:
---

MARKDOWN_FOMATTED_SLIDE_CONTENT

Personalize

In the _config.yml give your slide show an name, author's name and a description:

title:       reveal-jekyll
author:      Thomas Friese
description: Reveal.js for Jekyll with Solarized Color theme

Start Your Slide Show

On GitHub Pages you are done. Just watch https://YOUR_GITHUB_NAME.github.io/.

An your local machine run:

bundle exec jekyll serve

…and go to https://127.0.0.1:4000/.


reveal.js

A framework for easily creating beautiful presentations using HTML.

reveal.js comes with a broad range of features including nested slides, markdown contents, PDF export, speaker notes and a JavaScript API. It's best viewed in a browser with support for CSS 3D transforms but fallbacks are available to make sure your presentation can still be viewed elsewhere.

Links for reveal.js:

Jekyll

Jekyll is a simple, blog-aware, static site generator perfect for personal, project, or organization sites. Think of it like a file-based CMS, without all the complexity. Jekyll takes your content, renders Markdown and Liquid templates, and spits out a complete, static website ready to be served by Apache, Nginx or another web server. Jekyll is the engine behind GitHub Pages, which you can use to host sites right from your GitHub repositories.

Links for Jekyll:

Differences and Limitations

Slide Attributes

Attributes to the slide <section> elements are written in the Front-matter:

---
layout: slide
title: Background Transitions
data:
  transition: linear
  background: 'red'
  background-transition: slide
---

Fragments

Markdown fragments must be covered in a HTML block element using the attribute markdown="1":

<div markdown="1" class="fragment">
# Markdown Heading
 
Fragment 1 text
</div>
<div markdown="1" class="fragment">
Fragment 2 text
</div>

Fragments can be nested.

Vertical Slides

For vertical scrolling you need to leave the title: blank. All content on vertical slides must be wrapped in HTML <section> blocks:

---
layout: slide
title:
---

<section markdown="1">
# Top Slide
</section>
<section markdown="1">
# Bottom Slide
</section>

Configuration

All options for the reveal.js presentation are available in the _config.yml as sub keys of reveal:.

The configuration will be built in the <script /> block at the bottom of the index.html presentation file.

Code Syntax Highlighting

To insert a highlighted code block the code can be surrounded with the Liquid tag highlight:

{% highlight coffee %}
# Objects:
math =
  root:   Math.sqrt
  square: square
  cube:   (x) -> x * square x
{% endhighlight %}

Insted of Rouge for highlighting the code, reveal-jekyll uses the Reveal.js's preferred method via highlight.js. To use all options it is possible to surround the code with HTML nodes pre and code using the class language-* adding optional data tags:

<pre><code class="language-coffee" data-trim data-noescape data-line-numbers="1|3-5">
# Objects:
math =
  root:   Math.sqrt
  square: square
  cube:   (x) -> x * square x
</code></pre>

Slide Numbers

You can show slide numbers by selecting a format in the _config.yml file:

slideNumber:
  # Slide number formatting can be configured using these variables:
  #  "h.v":  horizontal . vertical slide number (default)
  #  "h/v":  horizontal / vertical slide number
  #    "c":  flattened slide number
  #  "c/t":  flattened slide number / total slides
  # "none":  don't show slide numbers
  format:    "c/t"

Speaker Notes

reveal.js comes with a speaker notes plug-in which can be used to present per-slide notes in a separate browser window. The notes window also gives you a preview of the next upcoming slide so it may be helpful even if you haven't written any notes. Press the 's' key on your keyboard to open the notes window.

Notes are defined by appending an <aside> element to a slide as seen below. You can add the markdown="1" attribute to the aside element if you prefer writing notes using Markdown:

---
layout: slide
---

Slide text...

<aside class="notes" markdown="1">
Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
</aside>

When used locally, this feature requires that reveal.js runs from a local web server.


Runtime Dependencies for Development

Running Jekyll on Your Server:

  • Commander: Command-line interface constructor (Ruby)
  • Colorator: Colorizes command line output (Ruby)
  • Classifier: Generating related posts (Ruby)
  • Directory Watcher: Auto-regeneration of sites (Ruby)
  • Kramdown: Default Markdown engine (Ruby)
  • Liquid: Templating system (Ruby)
  • Pygments.rb: Syntax highlighting (Ruby/Python)
  • Safe YAML: YAML Parser built for security (Ruby)
  • Sass: CSS extension language (Ruby)
  • CoffeeScript: compiling to JavaScript (Ruby)

Running reveal.js:

Reveal.js doesn't rely on any third party scripts to work but a few optional libraries are included by default. These libraries are loaded as dependencies in the order they appear, for example:

Reveal.initialize({
  dependencies: [
    // Cross-browser shim that fully implements classList - //github.com/eligrey/classList.js/
    { src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },

    // Zoom in and out with Alt+click
    { src: 'plugin/zoom-js/zoom.js', async: true },

    // Speaker notes
    { src: 'plugin/notes/notes.js', async: true },

    // Remote control your reveal.js presentation using a touch device
    { src: 'plugin/remotes/remotes.js', async: true },

    // MathJax
    { src: 'plugin/math/math.js', async: true }
  ]
});

You can add your own extensions using the same syntax. The following properties are available for each dependency object:

  • src: Path to the script to load
  • async: [optional] Flags if the script should load after reveal.js has started, defaults to false
  • callback: [optional] Function to execute when the script has loaded
  • condition: [optional] Function which must return true for the script to be loaded

Licenses

Jekyll: MIT licensed

reveal.js: MIT licensed
Copyright (C) 2020 Hakim El Hattab, https://hakim.se

reveal-jekyll contains the third party fonts

reveal-jekyll: MIT licensed
Copyright (C) 2021 Thomas Friese, https://tasmo.rocks

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].