Pi-Hole DNS Widget for Desktop

Overview

Table of contents

Overview

Pi-Hole DNS Widget for Desktop

PiHole Widgets is a project I needed to make for my personal needs, and I decided to share it with you.

It is developed with JavaFX, and uses the framework TilesFX.

Screen Shots
Square

img_5.png

Horizontal

img_7.png

Features

  • Live stats from pihole servers.
  • Modern widgets.
  • Comes with a simple install/uninstall for Windows.
  • Great summary of your pihole DNS in one place.
  • Show the last blocked domain.
  • Shows last time gravity was updated.
  • Change visual aspects of Widget.
  • Change size to your needs.
  • Simple configuration.

Upcoming features

  • Support for 2 Pi-Holes.
  • Beautiful Themes.
  • Hide to tray option.
  • Easy to install for macOS and Linux.
  • Enable/Disable Pihole from widget.

Donation

All donations are welcome and any amount of money will help me to maintain this project :)

Donate using Paypal

Installation

Pre-Requisites

  • Java 17+
  • Last version of Pihole.

Configuration

The widget automatically sets its configuration to the default pi-hole local address if that doesn't work , open the configuration interface by right clicking on the widget then click on Settings.

img_8.png

Then input your pihole IP Address/Port and API Token, and click Apply.

Where to find the API TOKEN

img.png

img_3.png

img_4.png

Personalize your widget

You can set your Widget size or layout by accessing the Widget configuration panel in Settings.

img_10.png

Running the widget

Exe is available for Windows, for other OS Gradle run the project, or you can package it to your needs using gradle jpackage or whatever tool suits you.

If you want to close Widget right-click on the Widget and a contextual menu will appear giving you the option to close it or update manually.

img_9.png

Testing

App is still in Beta, not tested enough, only ran on Windows 10, Mint OS and Ubuntu.

if you find any bugs or want to suggest new features please go to : https://github.com/foxy999/PiHoleWidgets/issues

Credits

Shoutout to :
  • hans0l0 for the project TilesFX.

  • afsalashyana for the helpful Covid Widget and JavaFX Tutorials.

Licence

Copyright (C) 2022. Reda ELFARISSI aka foxy999

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Go back to : Table of Content

Comments
  • update readme for adding IP and Port

    update readme for adding IP and Port

    Readme was missing that you can change the settings json if the application was asking you to configure first, also added description on how to do so with also adding the port if pihole is not hosted on port 80.

    opened by ValkiryXDA 2
  • Work without Auth Token

    Work without Auth Token

    When I check my auth token, it says,

    "No password set".

    But if I dont put in an auth token, it says, "Check Auth Token"

    This is easily fixable by stating in the documentation if you dont have a password use "*" as your auth token. It still reads fine, but doesn't give you an error about auth tokens.

    opened by deidyomega 1
  • Implemented/fixed Port setting

    Implemented/fixed Port setting

    Hi,

    Awesome project!

    I noticed when testing your widget that the Port setting were not implemented, because my PiHole instance is running on another port not 80

    Hope this helps, F0x

    opened by F0x06 0
  • Invalid unit abbreviation for domains blocked

    Invalid unit abbreviation for domains blocked

    The "Nbr of domains blocked:" shows 8.17L. L is not a valid unit. It should be 817K (817000) in my case. Also there's no reason to abbreviate number since there is enough space to spell it out Screenshot 2022-01-16 105655 .

    bug 
    opened by uberda 0
  • Version info and update

    Version info and update

    Hi,

    I am missing a small info (bottom right under copyright info maybe?) showing the used version number of the widget. It should also show a link to the github Download section if there is a newer version available.

    Thanks in advance

    enhancement 
    opened by jolu1705 1
  • Minimize to Tray (Windows)

    Minimize to Tray (Windows)

    Suggestion to add minimize to tray, while the widget continues to monitor in the background. If clicked, the tile will be shown in full. Minimizing reduces the widget back to the tray.

    enhancement 
    opened by moshulu 0
  • Configure more aspects of Widget

    Configure more aspects of Widget

    • [ ] 1. Which Widgets to display.
    • [ ] 2. Time to update Each widget.
    • [x] 3. Size.
    • [ ] 4. Where to display Widget.
    • [ ] 5. Top X blocked or Top X client
    enhancement 
    opened by foxy999 0
Releases(Release_1.5.2)
Owner
Reda
Reda
A beautiful Clock Widget for your Desktop! (tested on Windows)

ClockWidget A beautiful Clock Widget for your Desktop! (tested on Windows) This is a clock widget that I programmed in the first year of Computer Scie

Hasan Tuna 7 Dec 15, 2022
An example on how to build a configurable widget to trigger external searches along with Liferay search to Elasticsearch.

Liferay External Searches An example on how to build a configurable widget to trigger external searches along with Liferay search to Elasticsearch. Ge

Louis-Guillaume Durand 4 Oct 25, 2021
This app/widget is based on the work of Anthony (tonesto7), which is in turn based on the earlier work of David Schablowsky

Mustang Mach-E Widget for Android Intro This app/widget is based on the work of Anthony (tonesto7), which is in turn based on the earlier work of Davi

null 25 Nov 15, 2022
Cloudflare DynDNS Updater to automatically update DNS records

Cloudflare & DynDNS Good for everyone who wants to use Cloudflare with their local ip but has a changing ip address. Config # Your cloudflare api toke

Tobias G 6 Aug 27, 2022
Log4j CVE-2021-44228 examples: Remote Code Execution (through LDAP, RMI, ...), Forced DNS queries, ...

Log4j CVE-2021-44228 and CVE-2021-45046 Requisites Use a vulnerable JDK, for instance JDK 1.8.0_181 Usage Malicious server The malicious server deploy

Manuel Álvarez Álvarez 5 Feb 7, 2022
A Universal Resolver driver for did:dns identifiers.

Universal Resolver Driver: did:dns This is a Universal Resolver driver for did:dns identifiers. Specifications Decentralized Identifiers DID Method Sp

Danube Tech 0 Dec 14, 2022
Intra is an experimental tool that allows you to test new DNS-over-HTTPS services that encrypt domain name lookups and prevent manipulation by your network

Intra Intra is an experimental tool that allows you to test new DNS-over-HTTPS services that encrypt domain name lookups and prevent manipulation by y

Jigsaw 1.2k Jan 1, 2023
A plugin for the ja-netfilter, it can block dns resolution.

A plugin for the ja-netfilter, it can block dns resolution.

null 17 May 12, 2022
Desktop/Android/HTML5/iOS Java game development framework

Cross-platform Game Development Framework libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux

libgdx 20.9k Jan 1, 2023
Vector map library and writer - running on Android and Desktop.

Mapsforge See the integration guide and changelog. And read through how to contribute guidelines. If you have any questions or problems, don't hesitat

mapsforge 1k Dec 30, 2022
Protege Desktop

Protege Desktop Protege is a free, open-source ontology editor that supports the latest OWL 2.0 standard. Protege has a pluggable architecture, and ma

Protégé Project 798 Jan 4, 2023
An evolving set of open source web components for building mobile and desktop web applications in modern browsers.

Vaadin components Vaadin components is an evolving set of high-quality user interface web components commonly needed in modern mobile and desktop busi

Vaadin 519 Dec 31, 2022
Desktop app to browse and administer your MongoDB cluster

UMONGO, the MongoDB GUI UMONGO, the MongoDB GUI About This version of UMongo is provided as free software by EdgyTech LLC. UMongo is open source, and

Antoine Girbal 583 Nov 11, 2022
Desktop/Mobile JavaFX application framework

Basilisk is desktop/mobile application development platform for the JVM. Inspired by Griffon, Basilisk leverages JavaFX and JavafXPorts to bring the s

Basilisk 55 Feb 10, 2022
Vector map library and writer - running on Android and Desktop.

Mapsforge See the integration guide and changelog. And read through how to contribute guidelines. If you have any questions or problems, don't hesitat

mapsforge 1k Jan 7, 2023
Server supporting the Signal Private Messenger applications on Android, Desktop, and iOS

Server supporting the Signal Private Messenger applications on Android, Desktop, and iOS

Signal 8k Jan 3, 2023
🟪 TommyBox is a single-file executable that makes it possible to launch web apps on a desktop.

?? TommyBox About: TommyBox is a standalone executable container that makes it possible to launch static and dynamic web apps on a desktop by providin

null 19 May 28, 2022
⌨️Console client-server desktop application. ITMO University labs.

Java-Programming-2nd-semester ITMO University labs. Console client-server desktop application. lab5 - manage collection application, command line, man

Andrey Vasiliev 4 May 18, 2022
Aliucord - Discord Android app mod inspired by desktop Discord client mods.

Aliucord Aliucord is a modification for the Android Discord app inspired by desktop client modifications. Unlike other Android Discord app modificatio

null 2k Dec 31, 2022
A hotel management system desktop application, built with java SWT/Swing

A hotel management system desktop application, built with java SWT/Swing, with tabs to manage bookings, rooms, customers, payments, cancellations, hotel inventory orders, catering and a plan to visualize all the reservations for the month.

null 1 Jan 12, 2022