All Projects → maaslalani → slides

maaslalani / slides

Licence: MIT License
Terminal based presentation tool

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to slides

Marp Core
The core of Marp converter
Stars: ✭ 224 (-95.81%)
Mutual labels:  presentation, slides
dekk
👁 A presentation tool written in react.js
Stars: ✭ 33 (-99.38%)
Mutual labels:  presentation, slides
Libreoffice Impress Templates
Freely-licensed LibreOffice Impress templates
Stars: ✭ 238 (-95.55%)
Mutual labels:  presentation, slides
slides
No description or website provided.
Stars: ✭ 27 (-99.5%)
Mutual labels:  presentation, slides
diorama
A set of React.js components to create easy en extendable presentations.
Stars: ✭ 17 (-99.68%)
Mutual labels:  presentation, slides
Marp
The entrance repository of Markdown presentation ecosystem
Stars: ✭ 3,378 (-36.82%)
Mutual labels:  presentation, slides
slidev
Presentation Slides for Developers
Stars: ✭ 25,925 (+384.85%)
Mutual labels:  presentation, slides
Presa
🎞 Make stylish presentations in React, powered by styled-components
Stars: ✭ 169 (-96.84%)
Mutual labels:  presentation, slides
s6
S6 Blank - Slideshow templates using HTML 5, CSS 3 'n' JavaScript 2017+ w/ Bespoke.js-compatible "microkernel"
Stars: ✭ 91 (-98.3%)
Mutual labels:  presentation, slides
markdown-slides
Using markdown, write simple but beautiful presentations with math, animations and media.
Stars: ✭ 64 (-98.8%)
Mutual labels:  presentation, slides
getting-started-with-grails
Conference Talk - Getting Started with Grails
Stars: ✭ 23 (-99.57%)
Mutual labels:  presentation, slides
nicar tworkshop
Slides for #NICAR18 workshop on collecting and analyzing Twitter data
Stars: ✭ 23 (-99.57%)
Mutual labels:  presentation, slides
Reveal Ck
Create slides with ruby (and usually in markdown)
Stars: ✭ 202 (-96.22%)
Mutual labels:  presentation, slides
markdown-deck
A web component for presenters
Stars: ✭ 15 (-99.72%)
Mutual labels:  presentation, slides
Tslide
Terminal SlideDeck, supporting markdown.
Stars: ✭ 198 (-96.3%)
Mutual labels:  presentation, slides
bs-spectacle
No description or website provided.
Stars: ✭ 15 (-99.72%)
Mutual labels:  presentation, slides
Remarker
▶️ Remark cli
Stars: ✭ 132 (-97.53%)
Mutual labels:  presentation, slides
Kittik
Create slides in TypeScript and present them in the terminal using ASCII only!
Stars: ✭ 147 (-97.25%)
Mutual labels:  presentation, slides
eloc
1MB cli for authoring / presenting in markdown
Stars: ✭ 52 (-99.03%)
Mutual labels:  presentation, slides
presentador
📽 An opinionated presentation framework. Just write what you want to present and it will do the rest.
Stars: ✭ 25 (-99.53%)
Mutual labels:  presentation, slides

Slides

Slides in your terminal.

Slides Presentation

Installation

Homebrew Snapcraft AUR

Instructions

MacOS

brew install slides

Arch

yay -S slides

Nixpkgs (unstable)

nix-env -iA nixpkgs.slides

Any Linux Distro running snapd

sudo snap install slides

Go

go install github.com/maaslalani/slides@latest

From source:

git clone https://github.com/maaslalani/slides.git
cd slides
go install

You can also download a binary from the releases page.

Usage

Create a simple markdown file that contains your slides:

# Welcome to Slides
A terminal based presentation tool

---

## Everything is markdown
In fact, this entire presentation is a markdown file.

---

## Everything happens in your terminal
Create slides and present them without ever leaving your terminal.

---

## Code execution
```go
package main

import "fmt"

func main() {
  fmt.Println("Execute code directly inside the slides")
}
```

You can execute code inside your slides by pressing `<C-e>`,
the output of your command will be displayed at the end of the current slide.

---

## Pre-process slides

You can add a code block with three tildes (`~`) and write a command to run *before* displaying
the slides, the text inside the code block will be passed as `stdin` to the command
and the code block will be replaced with the `stdout` of the command.

~~~graph-easy --as=boxart
[ A ] - to -> [ B ]
~~~

The above will be pre-processed to look like:

┌───┐  to   ┌───┐
│ A │ ────> │ B │
└───┘       └───┘

For security reasons, you must pass a file that has execution permissions
for the slides to be pre-processed. You can use `chmod` to add these permissions.

```bash
chmod +x file.md
```

Checkout the example slides.

Then, to present, run:

slides presentation.md

If given a file name, slides will automatically look for changes in the file and update the presentation live.

slides also accepts input through stdin:

curl http://example.com/slides.md | slides

Go to the first slide with the following key sequence:

  • g g

Go to the next slide with any of the following key sequences:

  • space
  • right
  • down
  • enter
  • n
  • j
  • l
  • Page Down
  • number + any of the above (go forward n slides)

Go to the previous slide with any of the following key sequences:

  • left
  • up
  • p
  • h
  • k
  • Page Up
  • number + any of the above (go back n slides)

Go to a specific slide with the following key sequence:

  • number + G

Go to the last slide with the following key:

  • G

Search

To quickly jump to the right slide, you can use the search function.

Press /, enter your search term and press Enter
(The search term is interpreted as a regular expression. The /i flag causes case-insensitivity.).

Press ctrl+n after a search to go to the next search result.

Code Execution

If slides finds a code block on the current slides it can execute the code block and display the result as virtual text on the screen.

Press ctrl+e on a slide with a code block to execute it and display the result.

Configuration

slides allows you to customize your presentation's look and feel with metadata at the top of your slides.md.

This section is entirely optional, slides will use sensible defaults if this section or any field in the section is omitted.

---
theme: ./path/to/theme.json
author: Gopher
date: January 2, 2006
paging: Slide %d / %d
---
  • theme: Path to json file containing a glamour theme, can also be a link to a remote json file which slides will fetch before presenting.
  • author: A string to display on the bottom-left corner of the presentation view. Defaults to the OS current user's full name. Can be empty to hide the author.
  • date: A string that is used to format today's date in the native Go format 2006-01-02 or in the YYYY-MM-DD format. If the date is not a valid format, the string will be displayed. Defaults to 2006-01-02.
  • paging: A string that contains 0 or more %d directives. The first %d will be replaced with the current slide number and the second %d will be replaced with the total slides count. Defaults to Slide %d / %d. You will need to surround the paging value with quotes if it starts with %.

Date format

Given the date January 02, 2006:

Value Translates to
YYYY 2006
YY 06
MMMM January
MMM Jan
MM 01
mm 1
DD 02
dd 2

Alternatives

Credits: This project was heavily inspired by lookatme.

Development

See the development documentation

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].