Coder Social home page Coder Social logo

steflef / rayveal Goto Github PK

View Code? Open in Web Editor NEW

This project forked from planetoftheweb/rayveal

0.0 0.0 0.0 16.52 MB

A markdown first presentation framework. Based on reveal.js with preinstalled plugins, light Bootstrap and sweet extras.

Home Page: https://rayveal.tech

JavaScript 100.00%

rayveal's Introduction

RayVeal

Rayveal is an opinionated version of the awesome reveal.js. The main difference an approach to creating slides that is markdown centered with the ability to create multiple presentations in the same project.

This, plus the pre-installation of convenient plugins and libraries make it easier to create your presentations quickly using markdown. That helps me focus on writing and not on laying out presentations.

You can see the demo at rayveal.tech.

Instructions

Instead of creating HTML files, you simply create one or more *.md files in the docs/slides folder. A server is required in order to use RayVeal properly...since the markdown files have to be loaded dynamicaly, so upload the contents of the build folder to a server.

Installing Locally with NPM (optional)

Optionally, you can just run the presentation locally (great when you can't guarantee a network connection), There's a live preview server provided.

  1. Grab/Fork from repo
  2. build folder has presentation
  3. docs/slides/demo.md subfolder has sample markdown
  4. slides/index.json has a list of presentations (optional)

Running locally

  1. Run $ npm install from your terminal
  2. Edit docs/slides/demo.md or add *.md files
  3. Run $ npm start from your terminal
  4. Generates the docs/slides/index.json file (index)
  5. Creates a live reload server

Pre-installed libraries

Pre-installed libraries like Font Awesome will let you easily add icons to your presentation, while a lightweight version of bootstrap, which you can customize for your own needs, lets you use things like buttons, table, cards, list-groups and form styles if you need them. You can customize what's included with an npm run bootstrap-light command.

If you want to control what gets included in the bootstrap-light.css file, you can edit the src/bootstrap-light/scss/bootstrap.scss file.

Pre-installed plugins

There are lots of great reveal.js plugins and I added the awesome menu plugin, so that you can hit the m key and get a list of your presentations.

Persistent toolbar

One of the problems I often have when doing presentation is making sure that people have the URL to the presentation as well as contact and other important information. So, I created a persistent toolbar at the bottom of every slide.

It auto-hides after 5 seconds, but you can bring it back by using the t key. You can find it in the index.html file and put your own HTML there.

Fragments by default

Another way in which RayVeal differs from reveal is in the way it handles fragments. I don't like to show a lot of text in my presentations, but write short bullet points that I want people to consume one at a time. Therefore, fragments are on by default, just write your normal bullet points and they will show one at a time.

contenteditable code

Another way that Rayveal differs is that when you write code blocks by either using the ` character or ``` codeblocks, Rayveal makes those automatically have the contenteditable attribute. I demo a lot of code, so it's nice to be able to edit my codeblocks or even anything with the code tag.

Code options

I created some additional styles that are not in bootstrap.

Colored code blocks

You can use code blocks with different colors

<code class="code-primary">primary</code>
<code class="code-success">success</code>
<code class="code-info">info</code>
<code class="code-warning">warning</code>
<code class="code-danger">danger</code>

Tooltips

I'm not importing the Bootstrap JavaScript or the Bootstrap Grid, so I created my own way of doing a simple tooltip using CSS.

<a class="tooltip" href="#">`tooltips`<span>For overlay explanations</span></a> on rollover

Code Sample Lists

There's also a style that I need for some of my own coursework, which lets you create lists with code samples that change color in each line. Here's the code:

- `sample`
  - NUM: `one` `two` `three`
  - NUM: `four` `five` `six`
  - NUM: `seven` `eight` `nine`
  - NUM: `ten` `eleven` `twelve`
  - NUM:<br>
    `thirteen` `fourteen` `fifteen`

But it's better if you look at these in the demo

Slide Templates

Reveal.js lets you add style tags, classes and data attributes in comments, so I used these to create different slide templates. There are three right now.

Title Slide

<!-- .slide: data-state="title" -->

This is the title slide that appears at the beginning of the demo. Blue background, large fonts.

Page with Icons

<!-- .slide: data-state="hasicon" -->

A page that has a title with a Font Awesome icon in it. The spacing has to be different.

Circles

<!-- .slide: data-state="circles" -->

In this page, each bullet point becomes a circle. Just a different way to help the user focus.

More

Take a look at the demo for more examples, I'm really excited about some of the stuff you can do with Bootstrap's card and list-group components. I'd love to add more components and other layouts in the future.

rayveal's People

Contributors

hakimel avatar planetoftheweb avatar vonc avatar mischah avatar lordsutch avatar davidbanham avatar owenversteeg avatar rmurphey avatar dandv avatar alexbatista avatar asmod3us avatar farosas avatar burnpanck avatar gturri avatar bnjmnt4n avatar technicalpickles avatar webpro avatar nschonni avatar tkaczmarzyk avatar xiaomipatchrom avatar mahemoff avatar commadelimited avatar olivierbloch avatar danielmitd avatar jasonkarns avatar michik avatar oslego avatar akiersky avatar theone1984 avatar amitkot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.