Skip to content
cyclonesoftwarePublic

About

PageLoop is a lightweight WPF application that cycles through a list of web pages in fullscreen or windowed mode.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

PageLoop

PageLoop is a lightweight WPF application that cycles through a list of web pages in fullscreen or windowed mode. It uses WebView2 for rendering and supports YAML-based configuration, preloading pages for smooth transitions, and an easy exit hotkey.

✨ Features

  • YAML Configuration – Define pages and their display durations in a simple pages.yaml file.
  • Smooth Page Rotation – Preloads the next page to minimize load flicker.
  • Fullscreen or Windowed Mode – Launch in fullscreen for kiosk-style use or windowed mode for development.
  • Exit Hotkey (CTRL + C) – Quickly exit the app from fullscreen without needing a mouse.
  • Portable single-file executable (no installation required).

🖥️ Usage

  1. Edit or create the pages.yaml file in the executable directory:

    pages:
      - url: "https://www.google.com"
        duration: 30
      - url: "https://www.github.com"
        duration: 20
  2. Launch the application.

    PageLoop.exe
  3. (Optional) Launch in fullscreen:

    PageLoop.exe --fullscreen
  4. Press CTRL + C to exit at any time.

Configuration

Edit the Yaml Configuration file to include an unlimited number of entries, Place the Yaml file in the same directory has the exe.

  • url: The web page URL to display.
  • duration: The display duration for the page in seconds.

📂 Project Structure

PageLoop/
│
├── PageLoop.sln
├── MainWindow.xaml
├── MainWindow.xaml.cs
├── pages.yaml                # Main configuration file (generated if missing)
└── README.md

⚙️ Dev Enviroment Requirements

  • Windows 10/11
  • .NET 6.0 or later
  • WebView2 Runtime (required for rendering)
  • YamlDotNet (NuGet package)

🚀 Development / Contributing

  1. Clone the repository

    git clone https://github.com/yourusername/PageLoop.git
    cd PageLoop
  2. Install dependencies

    dotnet restore
  3. Build and run

    dotnet build
    dotnet run


🛠️ Configuration

Setting Description Default
pages.url URL to display https://www.duckduckgo.com
pages.duration Time in seconds before rotating to next page 30

🖼️ Example

Here’s a sample pages.yaml:

pages:
  - url: "https://news.ycombinator.com"
    duration: 15
  - url: "https://www.bbc.com"
    duration: 20
  - url: "https://www.reddit.com"
    duration: 25

🧰 Development

To work on PageLoop:

  1. Open PageLoop.sln in Visual Studio 2022 or later.
  2. Make changes to the MainWindow.xaml and MainWindow.xaml.cs.
  3. Use the pages.yaml for testing rotation behavior.

🔑 Hotkeys

Key Combo Action
CTRL + C Exit application

🛡 License

This project is licensed under the MIT License – see the LICENSE file for details.


About

PageLoop is a lightweight WPF application that cycles through a list of web pages in fullscreen or windowed mode.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages