/scooch

Slide show app

Primary LanguageTypeScript

Scooch about the project

Publish to Docker Hub

Is a Powerpoint / KeyNote like slide show app but then in the browser.

Installation

npm install --production

or docker

docker pull ivonet/scooch

Usage

With Node

npm start

With Docker Compose

create a docker-compose.yml with:

version: "3"
services:
  scooch:
    image: ghcr.io/mdvanes/scooch:qwik
    # Enable this volume to load your own slides from a local directory "my-slides"
    # volumes:
    #  - ./my-slides:/usr/src/app/public/slides
    ports:
      - 3000:3000

and run:

docker compose up

When running in a docker-machine in a terminal:

open http://$(docker-machine ip default):3000/

When native (linux) in a browser:

open a browser at localhost

Unit testing

Unit tests are written in Jasmine and can be run with Karma. Be sure to have the devDependencies loaded as well:

npm install

You may alsno need to install Karma globally:

npm install -g karma-cli

Now you can run the unit tests by simply running:

karma start

Coverage report can be found in the /coverage directory.

New presentations

Just create the markdown file(s) in your scooch folder and refresh the startup page. New slides will be picket up immediately.

Love / Hate

I love giving presentations but hate the presentation tools we currently utilize. This is my antidote.

Markdown

This tool utilizes markdown as the notation markup. This makes making slides easy.

See the included tutorials for complete explanations.

Credits

  • @pnmtjonahen Thanks! for your efforts on this project
  • thanks rajgoel for bundling some grate plugins

Version upgrade manual

upgrade to 1.5 from older version

  • Add lines within the comments (see index.html) to your own template(s)

upgrade to 2.0 from older version

  • Move all templates within their own folder in the templates folder
  • Move all themes to their corresponding template in the templates folder you just created
  • Adjust your template html(s) to point to the just moved theme css
  • Remove the themes folder
  • If you use a docker-compose.yml file you need to remove the /themes volume

Development

Running locally in development mode

npm run start

Running locally in production mode

npm run build
npm run serve

Building Docker image locally

docker compose up

For debugging it can be useful to force rebuilding and to show intermediate output of the Dockerfile:

BUILDKIT_PROGRESS=plain docker-compose up --build