ScreenPlay is an open source cross plattform app for displaying Wallpaper, Widgets and AppDrawer. It is written in modern C++17/Qt5/QML. Binaries with workshop support are available for Windows and soon Linux & MacOSX via Steam. Join our community: Homepage, Forum
Visit our Developer C++ Classes Documentation and our Getting Started Guide for creating Wallpaper and Widgets!

Get a free Steam key for you and your friends here:

Forums or Discord

or Reddit PM

![Preview](.gitlab/media/preview.mp4) # Platform support * ❌ Not working/Not implemented * ❓ Only partical implemented/Not tested
| Feature | Windows | Linux | MacOS | |------------------------ |--------- |------- |------- | | __ScreenPlay Main App__ | ✔ | ✔ | ✔ | | __Steam Binaries__ | ✔ | ❌ | ❌ | | __Wallpaper__ | ✔ | ❌ Help Needed for Gnome/KDE/etc! | ❓ (Basic implementation) Help Needed! | | __Widgets__ | ✔ | ❓ | ❓ Help Needed! | | __Multilanguage (EN,DE,RU,FR,ES)__ | ✔ | ✔ | ✔ |
Because every operating system has his own version of desktop environment we need to adapt the ScreenPlayWindow for every platform seperate. The most feature complete for now is Windows 10. Windows 7 works but the wallpaper have the [worng coordinates](https://gitlab.com/kelteseth/ScreenPlay/issues/34). MacOS has some basic wallpaper functionality but no maintainer. For Linux we sadly have no support for any desktops environments at the moment. __If you want to help and add new desktop environments look at ScreenPlayWallpaper/src folder__ * [BaseWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/basewindow.h) baseclass for: * [LinuxWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/linuxwindow.h) * [WinWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/winwindow.h) * [MacWindow](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/ScreenPlayWallpaper/src/macwindow.h)
| Plattform | Windows 7 | Windows 8/8.1 | Windows 10 | Gnome | KDE | XFCE | MacOS | |------------------------ |--------- |------- |------- |--------- |------- |------- | ------- | | __Wallpaper__ | ❓ Help Needed! | ❓ Help Needed! | ✔ | ❌ Help Needed! | ❌ Help Needed! |❌ Help Needed! | ❓ (Basic implementation) Help Needed! |
## The ScreenPlay Project * General user docs. Contains infromations about content creation for ScreenPlay. Hosted on gitlab, made with mkdocs: * Contribute at: https://gitlab.com/kelteseth/ScreenPlayDocs * View at : https://kelteseth.gitlab.io/ScreenPlayDocs/ * Developer docs generated from the ScreenPlay source code of this repo. Hosted on gitlab, made with qDoc: * Contribute at: https://gitlab.com/kelteseth/ScreenPlayDeveloperDocs * View at : https://kelteseth.gitlab.io/ScreenPlayDeveloperDocs/ * Discussons and content can be found via: * Discord: https://discord.gg/3RygPHZ * Forum: https://forum.screen-play.app/ * Reddit: https://www.reddit.com/r/ScreenPlayApp/ ## Contributing Everyone can contribute with code, design, documentation or translation. Visit our [contributing guide](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md) for more informations. * If you want to help [translate](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#translation) * If you are a [programmer](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#development) * If you are a [designer](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/CONTRIBUTING.md#design) # Getting started ### Basic 1. Install latest [git + git-lfs](https://git-scm.com/) 2. Clone ScreenPlay ``` bash git clone https://gitlab.com/kelteseth/ScreenPlay.git ``` 3. Download the latest [__Qt 5.14__](https://www.qt.io/download-qt-installer). Earlier versions are not supported! 4. Start install-dependencies.bat to download dependencies into the Common/ folder ``` bash //Windows .\install-dependencies.bat //Linux chmod +x install-dependencies.sh .\install-dependencies.sh ``` * This will install these dependencies via __vcpkg__ * libzippp * nlohmann-json * openSSL 1.1.1d * Download these dependencies via __git submodules__ * stomt-qt-sdk * qt-google-analytics 5. Follow the steps below for your OS. Then Open The ScreenPlay.pro via QtCreator. 6. Add install to the build steps. Projects -> Build -> Add Build Step -> Select Make -> Insert "install" into Make arguments. 7. Press build (the green play button). This will compile the project and copy all necessary files into your Qt installation. ### Windows 1. [Download and install MSVC 2019 Community](https://visualstudio.microsoft.com/vs/community/) 2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) - Install the Maintaince tool - Select the following features to install: - Qt 5.14.0 - MSVC 2017 64-bit - Qt WebEngine ### Linux 1. Install dependencies for your distro: ``` bash # Debian/Ubuntu sudo apt install build-essential libgl1-mesa-dev # Fedora/RHEL/CentOS (yum) sudo yum groupinstall "C Development Tools and Libraries" sudo yum install mesa-libGL-devel # openSUSE (zypper) sudo zypper install -t pattern devel_basis ``` 2. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) - Install the Maintaince tool - Select the following features to install: - Qt 5.14.0 - GCC - Qt WebEngine ### OSX 1. Install XCode via the app store 2. Launch XCode and install the XCode command line tools. (This may take a few minutes) - If in doubt or unsure, execute 'xcode-select --install' 3. [Download and install Qt 5 binary installer from qt.io](https://www.qt.io/download-qt-installer) - Install the Maintaince tool - Select the following features to install: - Qt 5.14.0 - Qt WebEngine - Developer and Designer Tools - OpenSSL 1.1.1.c Toolkit - OpenSSL 64-bit binaries 4. Change your default kit: QtCreator -> Options -> Kits -> Select your default kit (Desktop Qt 5.13.0) -> Change c and c++ Compiler to Apple Clang (x86_64)