All Projects → jf-guillou → lcds

jf-guillou / lcds

Licence: BSD-3-Clause license
Light Centralized Digital Signage

Programming Languages

PHP
23972 projects - #3 most used programming language
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to lcds

Teslalogger
Stars: ✭ 131 (+670.59%)
Mutual labels:  raspberry
Photobooth
A photobooth Web-Application for raspberry pi with gphoto2
Stars: ✭ 188 (+1005.88%)
Mutual labels:  raspberry
multicontainer-demo-rpi3
A demo of balena multicontainer on Raspberry Pi3 with PiTFT LCDs
Stars: ✭ 18 (+5.88%)
Mutual labels:  digital-signage
Fabscanpi Server
FabScan Pi Open Source 3D Scanner - Server application
Stars: ✭ 137 (+705.88%)
Mutual labels:  raspberry
Rpi wordclock
Software to create a Raspberry Pi based wordclock
Stars: ✭ 164 (+864.71%)
Mutual labels:  raspberry
Pikrellcam
Raspberry Pi motion vector detection program with OSD web interface.
Stars: ✭ 211 (+1141.18%)
Mutual labels:  raspberry
Gumcp
Web Control Panel for Raspberry Pi
Stars: ✭ 124 (+629.41%)
Mutual labels:  raspberry
WeatherPi TFT
a weather display for a raspberry pi and a TFT display written in python3 and pygame
Stars: ✭ 66 (+288.24%)
Mutual labels:  raspberry
Debian Pi Aarch64
This is the first 64-bit system in the world to support all Raspberry Pi 64-bit hardware!!! (Include: PI400,4B,3B+,3B,3A+,Zero2W)
Stars: ✭ 2,505 (+14635.29%)
Mutual labels:  raspberry
Berrylan
Raspberry Pi WiFi setup
Stars: ✭ 243 (+1329.41%)
Mutual labels:  raspberry
Rpi Webapplication
Text Guide and snippets to have 60fps web application using Raspberry
Stars: ✭ 142 (+735.29%)
Mutual labels:  raspberry
Flash cc2531
flash CC2531 USB dongle from your Raspberry, without Arduino nor CC Debugger.
Stars: ✭ 154 (+805.88%)
Mutual labels:  raspberry
Jns
jupyter notebook and lab on Raspberry Pi
Stars: ✭ 228 (+1241.18%)
Mutual labels:  raspberry
Umbrel Os
Run Umbrel Bitcoin and Lightning node on a Raspberry Pi in one click
Stars: ✭ 132 (+676.47%)
Mutual labels:  raspberry
warpi
"GUI" script running on a Raspberry Pi 4
Stars: ✭ 29 (+70.59%)
Mutual labels:  raspberry
Fmberry
Build an open source fm radio station with your raspberry pi
Stars: ✭ 125 (+635.29%)
Mutual labels:  raspberry
Rpi Pxe Server
setup a Raspberry Pi as an PXE-Server
Stars: ✭ 197 (+1058.82%)
Mutual labels:  raspberry
Python-NEO-6M-GPS-Raspberry-Pi
Python script for the NEO-6M GPS module on the Raspberry Pi
Stars: ✭ 41 (+141.18%)
Mutual labels:  raspberry
anyfesto
Low cost Raspberry Pi /Linux based access point with audio, education and communications local content server. Inspired by the ideas of sharing with others. Anyfesto - a platform from which to speak.
Stars: ✭ 66 (+288.24%)
Mutual labels:  raspberry
Rpicheck
RasPi Check - an Android app for checking your Raspberry Pi status.
Stars: ✭ 227 (+1235.29%)
Mutual labels:  raspberry

Project logo

Light Centralized Digital Signage

This PHP web app is a simple digital signage manager, used to display content on any kind of browser.

Based on the Yii2 framework. See https://github.com/jf-guillou/lcds/blob/master/composer.json for the complete list of extensions used in this project.

Build Status Scrutinizer Code Quality GitHub license

Table of contents

REQUIREMENTS

  • PHP >= 7.0
    • php-curl
    • php-xml
    • php-mbstring
    • php-ldap
  • Any php-pdo supported driver and associated database
    • php-mysql with mariadb-server >= 10.0 preferably
  • mediainfo -- extract media content-type and duration
  • youtube-dl -- download media from video hosting sites
  • Composer

INSTALLATION

Requirements

apt-get install -y git php php-mbstring php-ldap php-mysql php-curl php-xml composer mariadb-server mediainfo

sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl

Install app

cd /var/www
git clone -b production https://github.com/jf-guillou/lcds.git
cd lcds
composer install --no-dev

Database

Edit the database configuration file config/db.php according to your settings.

Make sure to modify the dbname=, username and password.

Then run the migrations to pre-fill the database :

./yii migrate --interactive=0

App configuration

Edit the app configuration file config/params.php :

  • language - Currently supported :
    • en-US
    • fr-FR
  • prettyUrl - See Enable pretty URLS
  • cookieValidationKey - Should be automatically generated by composer, should not be modified
  • proxy - Outgoing proxy if necessary, used by media downloaders
  • useSSO - If the web server is SSO enabled (CAS/Kerberos)
  • ssoEnvUsername - The HTTP environment variable containing the username from SSO
  • useLdap - Use LDAP for authentication backend
  • activeDirectorySchema - ActiveDirectory or OpenLDAP schema
  • ldapOptions - Common options for LDAP, default values should help you understand their meaning
  • cookieDuration - Cookie duration in seconds, 0 will disable cookies
  • weather - Weather renderer configuration / See https://darksky.net/dev for more details
    • language - Summary text language
    • units - Temperature units
    • apikey - API key used to fetch weather status
    • withSummary - Display text summary alongside icon

Web Server configuration

The Yii2 framework document root is in the /web folder

Apache

DocumentRoot "/var/www/lcds/web"
Enable pretty urls

Add to Apache configuration

<Directory "/var/www/lcds/web">
    # use mod_rewrite for pretty URL support
    RewriteEngine on
    # If a directory or a file exists, use the request directly
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    # Otherwise forward the request to index.php
    RewriteRule . index.php
    # ...other settings...
</Directory>

Nginx

root /var/www/lcds/web;
Enable pretty urls

Add to Nginx configuration

location / {
    # Redirect everything that isn't a real file to index.php
    try_files $uri $uri/ /index.php$is_args$args;
}

Ready

The app should be ready to use.

Default credentials are admin/admin

Do not hesitate to report bugs by posting an issue at Github

UPGRADE

cd /var/www/lcds
git pull
composer install --no-dev
./yii migrate --interactive=0

CLIENT

The client configuration mostly depends on the hardware you are going to use.

Basically, just set the homepage of the browser to your web server address with '/frontend' suffix

https://lcds-server/frontend

Raspberry Pi Client

If you want to use a Raspberry Pi, here is the setup we use.

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