Smart Home & Automation

Desktop overlays for IoT events, price drops, billing alerts, and any webhook-driven automation. One HTTP POST, one notification on your screen.

Any webhook, one notification

syncfu accepts any HTTP POST on port 9868. If a system can fire a webhook — Home Assistant, Node-RED, IFTTT, Zapier, a cron job, a custom script — it can put a notification on your screen. No SDKs, no configuration files, no accounts.

Home Assistant integration

Add syncfu as a notification target in Home Assistant using rest_command:

# configuration.yaml
rest_command:
  syncfu_notify:
    url: "http://your-desktop:9868/notify"
    method: POST
    content_type: "application/json"
    payload: >
      {
        "sender": "home-assistant",
        "title": "{{ title }}",
        "body": "{{ message }}",
        "icon": "{{ icon | default('home') }}",
        "priority": "{{ priority | default('normal') }}"
      }

# automation.yaml
- alias: "Doorbell notification"
  trigger:
    - platform: state
      entity_id: binary_sensor.doorbell
      to: "on"
  action:
    - service: rest_command.syncfu_notify
      data:
        title: "Doorbell"
        message: "Someone is at the front door"
        icon: "bell"
        priority: "high"

Node-RED flows

Use an HTTP Request node to POST to syncfu from any Node-RED flow:

// Node-RED function node → HTTP Request node
msg.url = "http://your-desktop:9868/notify";
msg.method = "POST";
msg.headers = { "Content-Type": "application/json" };
msg.payload = {
    sender: "node-red",
    title: "Motion Detected",
    body: "Camera: Front yard — " + new Date().toLocaleTimeString(),
    icon: "eye",
    priority: "high",
    actions: [
        { id: "view", label: "View Camera", style: "primary" },
        { id: "dismiss", label: "Dismiss", style: "secondary" }
    ]
};
return msg;

Price drop alerts

Monitor prices on any website with a simple script. Unlike CamelCamelCamel and Keepa (which only track Amazon), this works anywhere:

#!/usr/bin/env bash
# Price watcher — run via cron every hour
TARGET_PRICE=349
CURRENT=$(curl -s "https://api.example.com/price/ps5" | jq -r .price)

if (( $(echo "$CURRENT <= $TARGET_PRICE" | bc -l) )); then
  syncfu send -t "Price Drop!" -p high -i trending-down \
    -a "buy:Buy Now:primary" -a "watch:Keep Watching:secondary" \
    "PS5 dropped to $CURRENT (target: $TARGET_PRICE)"
fi

Cloud billing alerts

# AWS spend check — daily cron
SPEND=$(aws ce get-cost-and-usage \
  --time-period Start=$(date +%Y-%m-01),End=$(date +%Y-%m-%d) \
  --granularity MONTHLY --metrics BlendedCost \
  | jq -r '.ResultsByTime[0].Total.BlendedCost.Amount' \
  | xargs printf "%.0f")
BUDGET=1000

if [ "$SPEND" -gt "$((BUDGET * 85 / 100))" ]; then
  syncfu send -t "AWS Spend Warning" -p high -i flame \
    -a "dashboard:Open Console:primary" \
    "Current spend: $SPEND ($(( SPEND * 100 / BUDGET ))% of $BUDGET budget)"
fi

Crypto and stock price alerts

import requests

# Check Bitcoin price against target
price = requests.get("https://api.coinbase.com/v2/prices/BTC-USD/spot").json()
current = float(price["data"]["amount"])
target = 100000

if current >= target:
    requests.post("http://localhost:9868/notify", json={
        "sender": "price-watcher",
        "title": f"BTC hit {current:,.0f}",
        "body": f"Bitcoin crossed your {target:,} target",
        "icon": "trending-up",
        "priority": "high",
        "actions": [
            {"id": "sell", "label": "Open Exchange", "style": "primary"},
            {"id": "hold", "label": "Hold", "style": "secondary"},
        ],
    })

Smart home events

Doorbell rings, motion detected, thermostat changes, appliance alerts — all on your desktop with action buttons. Works with Home Assistant, Node-RED, and any webhook source.

Price watchers

Monitor prices on any website — not just Amazon. AI agent understands deal quality and shows overlay with direct purchase links. Replaces CamelCamelCamel and Keepa.

Billing alerts

AWS, GCP, or Azure spend approaching budget? Get a high-priority overlay with the exact amount and a link to your billing console.

Webhook relay

Any system that can fire an HTTP POST can show a notification on your screen. No SDK, no config file, no account — just one curl command.

Frequently asked questions

How do I get Home Assistant notifications on my desktop?

Home Assistant can call any HTTP endpoint via its RESTful notification platform or an automation with a rest_command. Point it at http://your-desktop:9868/notify and send a JSON payload with title, body, and actions. syncfu shows a rich overlay on your screen. You need network connectivity between the HA instance and your desktop.

Can I use syncfu with Node-RED?

Yes. Use an HTTP Request node in Node-RED that POSTs to http://your-desktop:9868/notify. You can template the notification payload using Node-RED function nodes — set the title, body, icon, priority, and action buttons dynamically based on the event that triggered the flow.

Does syncfu work for price alerts?

Yes. Write a script or AI agent that monitors prices on any website, then calls syncfu send when a threshold is crossed. The notification can include a direct Buy Now action button. Unlike CamelCamelCamel or Keepa, this works on any website — not just Amazon.

Can I track cloud spending with syncfu?

Yes. Use your cloud provider's billing API or a tool like Infracost to check current spend. When it exceeds a threshold, call syncfu send with a high-priority alert showing the amount and a link to your billing dashboard. A daily cron check is usually sufficient.

Related

One POST, one notification

Open source, runs locally, zero config. Install in 30 seconds and connect any webhook source to your desktop.

Get started →