A simple workspace setup for Pi-hole development with all the necessary repositories and Docker testing environment.
- Git with SSH access to GitHub
 - Docker and docker-compose
 - PowerShell (Tested on Windows but may also work on Linux/macOS)
 
- Clone this workspace repository
 - Run the initialization script:
.\init-workspace.ps1 
This will clone all Pi-hole repositories and check them out to the development branch:
pi-hole/pi-hole- Core Pi-hole scriptspi-hole/FTL- Pi-hole FTL (DNS engine)pi-hole/web- Web admin interfacepi-hole/docker-pi-hole- Docker containerpi-hole/PADD- Pi-hole dashboard
# Build the Docker image
.\build-docker.ps1
# Start the test container
.\run-docker.ps1# Build FTL before docker and include the binary in the image
.\build-docker.ps1 -l
# Start the test container
.\run-docker.ps1The test container will be available at:
- Web Interface: http://localhost
 - DNS: localhost:53
 
- Web Interface: Automatically mounted from 
./web/directory - Live Editing: Changes to web files are immediately reflected in the container
 
Press Ctrl+C to stop the container and return to your original directory.
- The init script safely handles existing repositories and won't overwrite uncommitted changes
 - Each repository can be developed independently
 - Docker setup includes volume mounts for live development
 
Happy Pi-hole hacking! 🕳️