Showly is a tool to function as a projector in places where these do not exist.
This is a java package that can extract slides from a PowerPoint presentation and display them in serveral web browsers in a LAN network.
A server device executes Showly, being connected in a LAN network. This creates a web server that serves a web page with a simple web app that displays the slides.
- Java 11
- Maven
- Javalin
- Apache POI
- Handlebars.java
For adding Showly to your project as a dependency you can add the following to your pom.xml if you are using Maven:
<dependency>
<groupId>io.github.r0land013</groupId>
<artifactId>showly</artifactId>
<version>0.2.1</version>
</dependency>
If you are using Gradle, add this to your build.gradle:
dependencies {
implementation 'io.github.r0land013:showly:0.2.1'
}
For now, Showly support Power Point binary and xml formats. You can use Showly like this:
import io.github.r0land013.showly.Showly;
import io.github.r0land013.showly.ShowlyConfig;
import io.github.r0land013.showly.slides.Slide;
// Create a Showly instance with port and slide file path
ShowlyConfig config = new ShowlyConfig(8080, "slides.pptx");
Showly showly = new Showly(config);
// Extract slides and start web server
List<Silde> slides = showly.show();
// Stop server when done
showly.stop();
The Showly server will run on port 8080
and extract slides from slides.pptx.
To view slides, client devices can open a browser and go to:
http://{Your IP address}:8080
But if you want to test locally you can open this in your browser:
http://localhost:8080
If you wish to contribute with some ideas and bug fixes open an issue describing it. If you have some great changes to add, please, open a Pull Request.
Tests are written with JUnit. To run:
mvn test
This project is under MIT LICENSE.
You can find my contact info here.