npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ponyshow

v0.1.1

Published

An app for creating beautiful presentations using markdown.

Downloads

3

Readme

Ponyshow - Create great-looking slides from simple Markdown files

Screenshot

Note: This project is in active development and will change (or break). Consider it alpha / beta.

Ponyshow is an app for turning your markdown files into beautiful presentations. It's a simpler, faster way to create, view and share high quality presentations.

Write down your thoughts in your favorite markdown / text editor, and Ponyshow will convert them into beautiful presentations on the fly. Make a change.. it's instantly visible.

Features include:

  • "Live" view rendering
  • Custom themes
  • Localization
  • Code snippet support with syntax highlighting
  • Image positioning and styling
  • Background images
  • Dynamic text styling
  • Websockets
  • Slide configuration options
  • Slide timer for auto transitioning
  • Build steps to present bullet points one step at at time

Roadmap:

  • Auto layouts
  • Video player support
  • Real-time collaborative editing
  • Interactive components: polls, exams, etc
  • Export to PDF

"Ponyshow is a Deckset killer".

If you've used Deckset, you are going to love Ponyshow.. especially if you have been wanting custom themes and more control over the final rendering. Ponyshow gives you FULL control over content, rendering and delivery.

There's many more possibilities with Ponyshow. Run, pony run!

Install

Requires node.js.

Get it on npm

Install globally and use the pony command.

You may need to update pony periodically, as the underlying rendering engine is in active development.

$ npm install ponyshow -g

$ pony

// if needed..
$ npm update

Usage

Example commands

$ pony run [path]				// renders a single presentation or displays a list to choose from
$ pony run --locale en          // set localization to English
$ pony new slide                // create a new deck
$ pony config                   // display global configs
$ pony config set foo=bar       // set a global
$ pony install theme            // view available themes from the Ponyshow Registry
$ pony install theme http://..  // install a specific theme

Ponyshow Decks

A Ponyshow deck is a compressed folder consisting of:

  deck-directory/
   |-- package.json		// deck configuration
   |-- deck.md			// master slide deck
   |-- assets/			// relative dependencies, images, media, etc
   `-- locales/			// localization files that contain ISO 3166-1 country codes (2 alpha)

Deck Configuration

You can enable capabilities and configuration for a markdown file. These properties must be defined before any section --- declaration.

  • theme <string>: Set the theme name for custom rendering purposes
  • slidenumbers <boolean>: Hide/show slide numbers. Custom themes can override this. Options: true|false
  • timing <integer>: Set any value to automatically advance to the next slide after given time.
  • footer <string>: Set a string visible on each slide footer. Custom themes can override this.
  • error <string>: Set a fail html string that will be displayed as the innerText value of the rendererror element.
  • tableclass <string>: Set the class name for a table. Example: striped
  • format <string>: Set either widescreen (1920 x 1080) or standard (1024 x 768). Default is standard. It's possible to set a custom format by setting a custom property that specific themes will respond to. The sets a class name to each slide <section>.
  • progress <boolean>: Show / hide the progress bar. Options: true|false
  • 'build-list': Allows you to step through list bullets one by one to keep your audience focused on what you’re currently talking about.

If you want additional properties please open a ticket. Ideas are welcomed! Or, (better yet) fork and send a pull request.

Creating Slides

A new slide is defined by three dashes ---, typed on a single line, with an empty line above and below.

Slides are rendered as <section> HTML nodes.

You can set a class or id property as part of the triple dash. Classes do NOT have a dot notation and are included by default. IDs require a hash symbol.

Note: It's preferred to use classes for styling since you can have multiple classes defined. IDs must be unique and are to URL navigation schemes. Only use IDs if you are sure it will be uniquely referenced.

Examples


---cover

---section

---#notes

This will produce three slides.

Writing Content

You write content using standard markdown, Kramdown and Ponyshow-flavor markdown. Ponyshow introduces additional syntax tokens that make authoring slides easy. To get started you can create a new deck to see a rendered output.

Refer to the pony-render project for the latest rendering engine updates.

Here's an example deck:

theme:appcelerator-training
progress:true
timing:8

#Welcome

just a test

---cover

# Test Slide

---

# Slide 2

---section

# Welcome to Ponyshow

---

# Slide 4

![](http://placehold.it/600x100)

- This is a list
- So is this

Here's a rendered deck preview:

Editing

The entry point for rendering is deck.md, a markdown file that comprises individual slides. This file is considered your master file and will be converted into HTML. You will want to edit this file in your preferred text editor.

You can write vanilla markdown along with Ponyshow syntax to render beautiful presentations. All other markdown files will be ignored. In future releases, there will be support for adding rendering multiple files into one deck.

Live View

During editing, changes will immediately reflect in the browser viewer enabling you to see "live" changes.

Note: if the browser doesn't update, simply manually refresh.

Localization Files

Ponyshow supports rendering localized versions of a master deck. You can set localization for the master deck in the package.json file, or at run time using the following command:

$ pony run --locale es

If a localization file doesn't exist, you will be prompted to create one. This will simply copy the master and create a new file with the naming convention of locales/[country-code].md. The renderer will explicitly look for 2-alpha country code files.

Ponyshow also supports i18n for configuration files (coming soon).

Pony what?

Ever heard of the expression, "dog and pony show"? An ode to Shakespeare, The Show Of Mr. Dogg And Mr. Poneigh "bringest the butts to the seats." That is to say, it's the best damn show on earth. This is the spirit of Ponyshow, a command-line tool that converts markdown into HTML.

The best dog and pony shows incorporate bad jokes and over the top excitement in presenting information. Hence the terrible terrible name for such a cool tool.

In reality, Ponyshow reduced cognitive load by using markdown to organize content and web development for rendering slides. Because it's web-enabled, you have greater flexibility with customizing the final output without the hassle of managing master files, versions, assets, proprietary formats, etc. Plus the rendering engine is on par with Keynote, Google Slides and Powerpoint.

Point blank: It's the best damn show on earth... especially if you're a developer needing to write presentations.

Contribution and License Agreement

If you contribute code to this project, you are implicitly allowing your code to be distributed under the Apache 2 license. You are also implicitly verifying that all code is your original work. </legalese>

Author

TZ Martin [email protected]

License

Copyright (c) 2015, Semantic Press (Apache 2 Licensed)

Ponyshow is made possible by the Shower open source project and other open source software.

See LICENSE for more info.