Skip to main content

The kioks application for IGL-Informer based on pyqt6 for embedded.

Project description

Fullscreen Web Display

A PyQt6-based fullscreen web browser that can receive URLs via external commands, perfect for kiosk displays, digital signage, or presentation systems.

Features

  • Fullscreen Display: Runs in fullscreen mode by default
  • External URL Injection: Load websites by updating a JSON command file
  • Background Loading: Pages load in the background and display when fully loaded
  • Keyboard Shortcuts: ESC to exit, F11 to toggle fullscreen, Ctrl+R to reload
  • Error Handling: Graceful handling of loading failures
  • Clean Architecture: Well-organized, modular codebase

Installation

From Source

  1. Clone the repository:
git clone https://github.com/yourusername/fullscreen-web-display.git
cd fullscreen-web-display
  1. Install dependencies:
pip install -r requirements.txt
  1. Install the package:
pip install -e .

Using pip (if published)

pip install fullscreen-web-display

Usage

Running the Application

# If installed via pip
fullscreen-web-display

# Or run directly
python -m fullscreen_web_display.main

Displaying Websites

The application monitors a JSON file called web_display_commands.json in the current directory. To display a website:

  1. Create or edit the web_display_commands.json file:
{
  "url": "https://example.com"
}
  1. The application will automatically detect the change and load the website in the background
  2. Once fully loaded, it will switch to display the new page

Keyboard Shortcuts

  • ESC: Exit the application
  • F11: Toggle fullscreen mode
  • Ctrl+R: Reload the current page

Development

Running Tests

python -m pytest tests/

Code Style

The project follows PEP 8 guidelines. Use tools like black or autopep8 for formatting:

black src/

Adding Features

  1. Fork the repository
  2. Create a feature branch
  3. Add your changes in reasonable commits
  4. Add tests for new functionality
  5. Submit a pull request

Requirements

  • Python 3.8+
  • PyQt6 >= 6.4.0
  • PyQt6-WebEngine >= 6.4.0

Use Cases

  • Digital Signage: Display rotating web content on screens
  • Kiosk Systems: Show specific web applications in fullscreen
  • Presentation Systems: Display web-based presentations
  • Monitoring Dashboards: Show real-time web dashboards
  • Remote Display Control: Control what's displayed from external scripts

Troubleshooting

Common Issues

  1. PyQt6 Installation: Make sure you have PyQt6 and PyQt6-WebEngine installed
  2. File Permissions: Ensure the application can create and monitor the JSON file
  3. Network Issues: Check internet connectivity if pages fail to load

Debug Mode

Set the environment variable DEBUG=1 to enable verbose logging:

DEBUG=1 fullscreen-web-display

License

This project is currently copyrighted by me but contributions are very welcome. I just have to find the right open source license.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Changelog

v1.0.0

  • Initial release
  • Fullscreen web display functionality
  • External URL injection via JSON file
  • Background loading
  • Keyboard shortcuts
  • Modular architecture

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

igl_kiosk-0.0.2.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

igl_kiosk-0.0.2-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file igl_kiosk-0.0.2.tar.gz.

File metadata

  • Download URL: igl_kiosk-0.0.2.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-58-generic

File hashes

Hashes for igl_kiosk-0.0.2.tar.gz
Algorithm Hash digest
SHA256 b5ff49ee1d3fa422eaf1c6ce9013376fd941605222d72a1506be7926e031ff79
MD5 18a254aef58b104a05394b03965b4690
BLAKE2b-256 16b10e0e56661530bb8d865daf314a7a54b92c64353211ff64ff7526db7a42b0

See more details on using hashes here.

File details

Details for the file igl_kiosk-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: igl_kiosk-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-58-generic

File hashes

Hashes for igl_kiosk-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1aaf297d0cbd00b756466ae8d8afd9dd6109450befeb334472cb845a3a95faea
MD5 8abf08fbac50fe2d876d862e40949e89
BLAKE2b-256 ebae5c3a26f2f44cdc17b32cd36ba7dd35354563609a102f52ce048e2c6eaf1a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page