👋 I'm a passionate C#/Python/Go developer with a knack for IoT innovations and a fervent love for open source projects. I thrive on turning smart home dreams into reality, weaving technology into everyday life.
🌟 My journey involves not just writing code but creating experiences. I believe in the transformative power of technology to improve our lives and I'm on a mission to make it happen.
- 🐳 I build and publish self-hosted apps as Docker containers — 90+ images on Docker Hub
- 🏠 I love to contribute to home automation projects: Home Assistant integrations, MQTT, ESP32 and Raspberry Pi
- 💬 I build WhatsApp and Telegram bots, notification bridges and n8n community nodes
- 📡 I write monitoring and network tools: Prometheus exporters, DNS and certificate monitors, Red Alert (Pikud HaOref) tooling
- 🤖 I love electronics and DIY projects 😁
- 📝 I blog at techblog.co.il
- 💬 Ask me about anything, I am happy to help 😄
- 🧗 I try to: Go beyond and push the bounds
- ⚡ Fun fact: I love connecting with different people 🙌
| 🎁 Projects | ⭐ Stars | 📚 Forks | 🛎 Issues | 📬 Pull requests | 🐳 Container Pulls |
| Broadlink Manager Docker | |||||
| Safe URL | |||||
| Apprise API Bridge | |||||
| Deepstack Trainer | |||||
| DeCompose | |||||
| Wazy | |||||
| voicy | |||||
| certi | |||||
| Xiaomi Token Extractor | |||||
| Arpspoof Docker | |||||
| HAvid-19 | |||||
| Botvid-19 | |||||
| Botigen | |||||
| Dockerbot | |||||
| Redalert | |||||
| ttsbot | |||||
| OCR Docker | |||||
| Gotenberg UI | |||||
| TTS-STT |
Beyond the featured table above, grouped by area.
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| Find-my-kids | Self-hosted WhatsApp bot that uses local DeepFace face recognition via Green API to find your kids in group photos and forward them to you | ||
| Kino | Self-hosted service that watches WhatsApp group photos through OpenWA, finds your kids' faces locally on CPU, and saves and forwards their photos, with a web UI to teach it each face | ||
| Iris | Self-hosted WhatsApp safety monitor for kids: classifies text, voice notes, images and video with OpenAI Moderation and Whisper, and alerts parents over WhatsApp via OpenWA. | ||
| WAssist | Self-hosted WhatsApp Cloud API assistant bot in Python: chat with OpenAI GPT, save and search notes, Whisper voice transcription, weather and Google Calendar | ||
| WAlert | WhatsApp bot that forwards Israeli Red Alert (Pikud HaOref) alerts to a chat or group via Green-API, with settlement filtering and Docker image | ||
| whatsapp-media-vault | Python WhatsApp bot on Green-API that archives images, videos, documents and audio from chosen chats into local folders, with Docker | ||
| blessed-by-the-bot | Self-hosted WhatsApp bot that auto-sends birthday, wedding and anniversary blessings and joins group congratulations. Go, web UI, GreenAPI/GOWA | ||
| greenapi-n8n-router | Self-hosted relay that polls Green API for incoming WhatsApp messages and forwards them to per-chat n8n webhook URLs, with an Angular web UI | ||
| whatsapp-bridge | Send WhatsApp messages over HTTP or MQTT via the WhatsApp Cloud API and forward incoming messages to MQTT, for Home Assistant and IoT | ||
| ma-nish | Unofficial Python wrapper for the WhatsApp Cloud API (Meta): send text, media, locations, contacts, lists, templates and reactions, and parse webhooks | ||
| py-wago | Async Python client (aiohttp + Pydantic) for the Wago WhatsApp MultiDevice REST API, a self-hosted WhatsApp gateway |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| green-api-custom-notifier | Home Assistant custom notify component (HACS) that sends WhatsApp text and file notifications to contacts and groups via Green API | ||
| wapi-custom-notifier | Home Assistant notify integration (HACS) that sends WhatsApp messages to contacts and groups via a self-hosted whatsapp-api server | ||
| matterbridge-custom-notifier | Home Assistant notify platform (HACS) that sends WhatsApp group messages through a self-hosted Matterbridge REST API, no WhatsApp Cloud API | ||
| manish-custom-notifier | Home Assistant custom integration (HACS) that sends WhatsApp notifications through the WhatsApp Cloud API using template messages and the ma-nish library | ||
| ha-openwa-notify | A Home Assistant integration that sends WhatsApp notifications (text, image, video, audio, voice notes and documents) to contacts and groups through a self-hosted OpenWA gateway. | ||
| zerobyte-custom-component | Home Assistant custom integration (HACS) for Zerobyte, the restic-based backup tool: monitor volumes, repositories and schedules, and trigger backups | ||
| adb-api | Self-hosted FastAPI REST API and browser virtual remote for controlling Android TV devices over ADB: key events, apps, shell, screenshots | ||
| locationsharing | Publish Google Maps shared locations to Home Assistant as MQTT device trackers via auto-discovery, packaged as a Docker container | ||
| Holocron | Sideloaded Android app that forwards incoming SMS and RCS messages to webhooks, REST APIs, or MQTT using sender rules, for home-lab automation | ||
| MqttControl | Windows tray app in C# that controls a PC over MQTT (shutdown, restart, lock, messages, screenshots) and publishes CPU, RAM and disk telemetry to Home Assistant |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| wolbot | Telegram bot that wakes computers on your LAN with Wake-on-LAN magic packets and shows their online status, written in Python | ||
| Botami4 | Python Telegram bot for controlling a Tami4 Edge water bar: boil water, prepare saved drinks, and check filter and UV lamp status | ||
| Adventurebot | Private Telegram bot for self-hosted AdventureLog: browse trips, locations and checklists, find nearby places, and get daily trip reminders | ||
| Telessist | Self-hosted Telegram bot for OpenAI GPT-3, DALL-E and Whisper, with semantic search over saved personal notes and IMS weather forecasts | ||
| tasmota-bot | Telegram bot that discovers Tasmota smart plugs on your LAN and shows their names and power state, using the Tasmota HTTP API | ||
| weathy | Daily Israeli weather forecast notifier: pulls IMS forecasts via weatheril and sends them to Telegram or any Apprise channel on a schedule |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| redalert-proxy | Unofficial Python/Flask Docker proxy for the Israeli Home Front Command (Pikud HaOref) red alert feed, with current-alert and alert-history endpoints | ||
| RedAlertop | Unofficial Windows tray app that shows Israeli Red Alert (Tzeva Adom) alerts from Pikud HaOref or MQTT with sound and notifications | ||
| miklat-alert | Visual alert indicator for the Israeli Home Front Command (Pikud HaOref) Red Alert system, built for Raspberry Pi Zero with a WS2812B (NeoPixel) LED strip. | ||
| Redalert-Windows-Service | Windows service (C#/.NET) that polls Pikud HaOref red alerts and forwards them via MQTT, a Telegram bot or UDP for home automation |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| AGHSync | Keep multiple AdGuard Home instances in sync: push a master's config to slaves on a schedule, on demand, via webhook, or on file change | ||
| AGHexporter | Prometheus exporter for one or more AdGuard Home instances: DNS query, blocking, client and upstream metrics, with a ready-made Grafana dashboard | ||
| speedtest-exporter | Self-hosted internet speed monitor in Go with scheduled speed tests, a live web dashboard, Prometheus metrics and Shoutrrr/WhatsApp alerts | ||
| dnsmon | Self-hosted DNS propagation checker and monitor: query 124 global resolvers, trace delegation, and get alerts via Shoutrrr or WhatsApp | ||
| go-dnstester | Self-hosted DNS benchmark with a web UI: compares UDP, DoT and DoH resolver latency, ping, history, trends, schedules and Prometheus metrics | ||
| cloudflared-mon | Monitor Cloudflare Tunnel (cloudflared) health via the Cloudflare API and get Apprise notifications when a tunnel's status changes | ||
| uptimekuma-agent | Lightweight Docker agent that sends periodic heartbeats to an Uptime Kuma Push monitor for hosts behind NAT, firewalls or remote sites | ||
| skryol | Self-hosted attack-surface monitor that runs daily Shodan sweeps of your IPs, domains and CIDRs, with diffs, risk scores and routed alerts | ||
| Holonet | Self-hosted SNMP trap to messaging bridge: classify traps with rules and flood control, alert via Telegram, WhatsApp, webhooks, Shoutrrr | ||
| SwitchDeck | Self-hosted Go web app to manage and monitor TP-Link Easy Smart switches: ports, VLANs, LAG, QoS, alerts, backups, Prometheus metrics and Grafana | ||
| sophos-exporter | Prometheus exporter for Sophos Firewall (SFOS, XG/XGS) over SNMP v2c/v3, with device, interface, service, HA, license and VPN metrics plus a Grafana dashboard | ||
| raptor | Self-hosted webhook.site alternative: capture, inspect, automate and forward HTTP webhooks, inbound email and DNS queries. Single Go binary. | ||
| Tollan | Self-hosted Graylog-style log management in a single Go binary: syslog/GELF/Beats ingest, SQLite FTS search, pipelines, alerts | ||
| wa_llm_exporter | Prometheus exporter for the wa_llm WhatsApp AI bot: messages, groups, senders and connection health from PostgreSQL, with Grafana dashboard | ||
| grafana-stack | Docker Compose monitoring stack for Docker hosts and containers: Prometheus, Grafana, Alertmanager, cAdvisor, Node Exporter, Pushgateway and InfluxDB | ||
| unbound-docker | Docker image of the Unbound validating, recursive and caching DNS resolver, built against its own OpenSSL, with DNS over TLS forwarding and local records |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| translator | Self-hosted Hebrew-to-English translation REST API using FastAPI and the Helsinki-NLP opus-mt-tc-big-he-en MarianMT model, runs on CPU or CUDA | ||
| transcribing-service | Self-hosted FastAPI speech-to-text microservice using local OpenAI Whisper (CPU or CUDA) to transcribe MP3, WAV, OGG, M4A and WEBM files | ||
| Rechroma | Self-hosted photo & video colorizer and restorer — DeOldify, GFPGAN and Real-ESRGAN in modern PyTorch, with a web UI, REST API and Telegram bot | ||
| Mailsieve | Self-hosted email validation API and web UI built on FastAPI, with append-only result history, revision diffs, SQLite/Postgres/MySQL and Docker | ||
| scipio | Self-hosted REST API around israeli-bank-scrapers: fetch Israeli bank and credit-card transactions over HTTP, with async jobs, 2FA/OTP and Swagger | ||
| Applyfy | Self-hosted LinkedIn job digest: a FastAPI + JobSpy scraper API plus an n8n workflow that emails fresh job listings as an HTML table | ||
| spotify-downloader-ui | Docker image for the spotDL web UI: download songs from Spotify links or searches in your browser, with audio fetched from YouTube Music by default | ||
| renfild | Self-hosted, speaker-aware voice assistant for Raspberry Pi: custom wake word, voice ID, local Whisper, Piper and Ollama, Go server with web UI | ||
| zerobyte-whatsapp-notification-service | FastAPI service that forwards Zerobyte backup notifications to WhatsApp contacts and groups via Green-API | ||
| hebrew-clock | Hebrew word-clock for e-paper displays: FastAPI server rendering Israel time in written Hebrew with weather, date and analog face, plus ESP32-C3 firmware |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| n8n-nodes-openwa | n8n community nodes for a self-hosted OpenWA WhatsApp gateway: send messages and manage chats, groups and sessions, and trigger workflows on WhatsApp events | ||
| n8n-nodes-virustotal | n8n community node for the VirusTotal API v3: look up and scan files, URLs, domains and IPs, get a normalized verdict, and watch indicators for changes | ||
| n8n-nodes-ssllabs | n8n community nodes for the Qualys SSL Labs API v4: run SSL/TLS server assessments, get grades and certificate details, and get alerts on grade drops or expiring certificates. | ||
| n8n-nodes-shortio | n8n community node for Short.io: create and manage branded short links in bulk, generate QR codes, set geo targeting, read click statistics, and trigger on new links or clicks. | ||
| n8n-nodes-shodan-internetdb | n8n nodes for Shodan InternetDB: keyless IP lookups for open ports, CPEs, hostnames, tags, and known CVEs, plus a trigger that alerts on exposure changes. | ||
| n8n-nodes-linkwarden | n8n community nodes for Linkwarden: save, search and manage links, collections, tags, highlights, archives and RSS subscriptions, and trigger on new links. | ||
| n8n-nodes-latlng | n8n community node for the LatLng API: geocode and reverse geocode addresses, search places, and render static maps and vector tiles from OpenStreetMap data | ||
| n8n-nodes-israelpost | n8n community node that finds Israeli zip codes (mikud) by street address or PO box, looks up the address of a zip code, and searches Israel Post localities and streets | ||
| t0mer-n8n-nodes-israeli-banks | n8n nodes that fetch Israeli bank and credit-card transactions from a self-hosted Scipio server, with async scrape jobs, OTP two-factor support and a trigger for new transactions. |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| py-weatheril | Unofficial Python wrapper for the Israel Meteorological Service (IMS) API: current weather, forecasts, radar/satellite images and warnings | ||
| pywebtop | Unofficial async Python wrapper for the Webtop (SmartSchool) school portal API: homework, schedule, messages, notifications and more | ||
| pymashov | Unofficial async Python wrapper for the Mashov Israeli school portal API: grades, timetable, homework, behavior and messages via httpx | ||
| py-busnearby | Unofficial async Python client for Bus Nearby (busnearby.co.il): real-time arrival times for Israeli bus stops, filtered by line | ||
| py-zerobyte | Unofficial Python SDK for the Zerobyte backup API: manage volumes, restic repositories, snapshots, backup schedules and notifications | ||
| py-adventurelog | Unofficial async Python SDK for AdventureLog, the self-hosted travel tracker. Built on httpx and Pydantic v2, with a sync wrapper |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| docker-FastAPI | Base Docker image for FastAPI web apps: Python with FastAPI, Uvicorn, Jinja2, aiofiles, loguru and other common libraries preinstalled | ||
| docker-selenium | Base Docker image for Python Selenium automation with Google Chrome, ChromeDriver and Xvfb preinstalled | ||
| python-docker-template | Minimal GitHub template for Dockerized Python apps: Ubuntu-based Dockerfile, docker-compose skeleton and requirements.txt |
| Project | What it does | ⭐ Stars | 🐳 Pulls |
|---|---|---|---|
| LoRa-Weather-Station | ESP32 LoRa weather station: DHT22, BMP180, BH1750 and rain sensor readings sent over 433 MHz LoRa to a gateway that forwards them to MQTT and ThingsBoard | ||
| sentry | ESP32 firmware that reads the SwitchBot lock's BLE operation log to report who locked or unlocked it, via MQTT and a web UI | ||
| window-lock | ESP32 window lock controller with a Python Telegram bot over MQTT: check window state, lock remotely and alert when nobody is home | ||
| pi-fm-radio | Raspberry Pi Zero FM radio receiver with a TEA5767 tuner, SSD1306 OLED and a FastAPI web UI and REST API for tuning presets | ||
| HanuPI | Raspberry Pi smart Hanukkah menorah (Hanukia): GPIO-driven LED candles lit by push buttons or a FastAPI web UI that also plays the blessing | ||
| OnAir | Windows tray app that detects Teams/Zoom meetings and camera use and switches WLED presets on an ESP32 "On Air" sign over HTTP | ||
| pi-pico-computer-unlocker | Raspberry Pi Pico W USB keyboard that unlocks your computer remotely over MQTT. CircuitPython, token-checked, Home Assistant friendly | ||
| TelegramNotify | Arduino library for ESP32 that sends Telegram Bot API notifications over HTTPS with a single call | ||
| GreenApi-WhatsApp-Library | Arduino library for ESP32 and ESP8266 that sends WhatsApp messages to contacts and groups over HTTPS via the Green-API service |
I publish self-hosted apps as multi-arch images on Docker Hub under the techblog namespace — over 90 repositories. Highlights:
| Image | Source | Pulls |
|---|---|---|
docker pull techblog/broadlinkmanager |
broadlinkmanager-docker | |
docker pull techblog/safeurl |
SafeUrl | |
docker pull techblog/apprise-api-bridge |
apprise-api-bridge | |
docker pull techblog/deepstack-trainer |
deepstack-trainer | |
docker pull techblog/decompose |
DeCompose | |
docker pull techblog/wazy |
Wazy | |
docker pull techblog/voicy |
voicy | |
docker pull techblog/certi |
certi | |
docker pull techblog/xiaomi_token_extractor |
Xiaomi-Token-Extractor | |
docker pull techblog/arpspoof-docker |
Arpspoof-Docker | |
docker pull techblog/havid-19 |
HAvid-19 | |
docker pull techblog/botvid-19 |
Botvid-19 | |
docker pull techblog/botigen |
Botigen | |
docker pull techblog/dockerbot |
dockerbot | |
docker pull techblog/redalert |
Redalert | |
docker pull techblog/ttsbot |
ttsbot | |
docker pull techblog/ocr-docker |
ocr-docker | |
docker pull techblog/gotenbergui |
gotenberg-ui | |
docker pull techblog/tts-stt |
tts-stt | |
docker pull techblog/find-my-kids |
Find-my-kids | |
docker pull techblog/kino |
Kino | |
docker pull techblog/iris |
Iris | |
docker pull techblog/wassist |
WAssist | |
docker pull techblog/walert |
WAlert | |
docker pull techblog/whatsapp-media-vault |
whatsapp-media-vault | |
docker pull techblog/greenapi-n8n-router |
greenapi-n8n-router | |
docker pull techblog/whatsapp-bridge |
whatsapp-bridge | |
docker pull techblog/ofek-bot |
ofek-bot | |
docker pull techblog/adb-api |
adb-api | |
docker pull techblog/locationsharing |
locationsharing | |
docker pull techblog/hebrew-clock |
hebrew-clock | |
docker pull techblog/wolbot |
wolbot | |
docker pull techblog/telessist |
Telessist | |
docker pull techblog/adventurebot |
Adventurebot | |
docker pull techblog/aghsync |
AGHSync | |
docker pull techblog/aghexporter |
AGHexporter | |
docker pull techblog/speedtest-exporter |
speedtest-exporter | |
docker pull techblog/dnsmon |
dnsmon | |
docker pull techblog/dnstester |
go-dnstester | |
docker pull techblog/cloudflared-mon |
cloudflared-mon | |
docker pull techblog/skryol |
skryol | |
docker pull techblog/holonet |
Holonet | |
docker pull techblog/switchdeck |
SwitchDeck | |
docker pull techblog/raptor |
raptor | |
docker pull techblog/wa-llm-exporter |
wa_llm_exporter | |
docker pull techblog/uptimkuma-agent |
uptimekuma-agent | |
docker pull techblog/redalert-proxy |
redalert-proxy | |
docker pull techblog/translator |
translator | |
docker pull techblog/rechroma |
Rechroma | |
docker pull techblog/mailsieve |
Mailsieve | |
docker pull techblog/scipio |
scipio | |
docker pull techblog/applyfy |
Applyfy | |
docker pull techblog/weathy |
weathy | |
docker pull techblog/spotify-downloader-ui |
spotify-downloader-ui | |
docker pull techblog/unbound-dns |
unbound-docker | |
docker pull techblog/zanzito-thingsboard-exporter |
zanzito-thingsboard-exporter | |
docker pull techblog/zerobyte-whatsapp-notification-proxy |
zerobyte-whatsapp-notification-service | |
docker pull techblog/fastapi |
docker-FastAPI | |
docker pull techblog/selenium |
docker-selenium | |
docker pull techblog/botami4 |
Botami4 |





