Screenly is a digital signage platform-based web application. They provide commercial and open source editions. All ad content such as image, video, and links can be managed easily. Their official website is https://www.screenly.io. For the open source edition, you can read the installation instructions on https://www.screenly.io/ose/.
With respect to the Screenly open source edition, you can deploy it with a custom image that is provided by Screenly. You can download it from https://github.com/screenly/screenly-ose/releases. If you have a Raspberry Pi with Raspbian Jessie, you can install it directly into your Raspberry Pi. Just open terminal and type this command:
$ bash <(curl -sL https://www.screenly.io/install-ose.sh)
After it's installed and rebooted, you can see the Screenly dashboard. You can manage ad content by calling the URL http://<server>:8080 on your remote web server. Don't run the web browser on your local Raspberry Pi. You can see the Screenly management page here:
Source image: https://www.screenly.io/ose/
Screenly is built using Python and runs on a web server called nginx. You can modify it for your use case. For further information about Screenly's open source edition, go to https://github.com/screenly/screenly-ose.