Steam-Market-Multi-Watcher — Your Personal Steam Market Tracker

If you’re into trading or collecting skins, items, or cosmetics on the Steam Community Market, you know how fast prices fluctuate. Keeping an eye on multiple items manually can be exhausting — that’s where Steam‑Market‑Multi‑Watcher comes in handy. This lightweight tool lets you monitor multiple items at once, showing you price changes and notifying you when an item hits your target price.

🔍 What is Steam-Market-Multi-Watcher?

Steam-Market-Multi-Watcher is a PHP-based dashboard and watcher script designed to track multiple items on the Steam Market simultaneously. Instead of having to refresh pages or search items manually one by one, you feed the items you care about into a JSON file — and the watcher does the rest.

Key features:

  • Multi-item tracking via an items.json list.
  • Web dashboard that auto-refreshes, so you get up-to-date price information without manual reloads.
  • Notifications — you can set up a webhook (for example for Discord) so the bot alerts you when an item reaches or drops below your desired price.
  • Caching and robust price parsing, which helps avoid rate-limit problems from Steam (since the tool uses the undocumented Steam price endpoints).
  • Optionally: run as a CLI watcher for headless or 24/7 monitoring (e.g. on a server).

In short: rather than checking dozens of listings manually — refreshing pages, hoping for a good price — the watcher automates the hustle and lets you wait until the market matches your ideal price.

Why this matters: the problem with manual browsing

The Steam Community Market can be overwhelming. There are thousands of items, rapidly changing buy/sell prices, and — especially for popular games and skins — high volatility. According to many community users, the market interface can feel clunky or even unreliable for heavy trackers. As one user put it:

“The market is complete garbage.”
Reddit

For anyone trading more than a handful of items, manually monitoring listings is inefficient, error-prone, and simply tiresome. Tools like Steam-Market-Multi-Watcher help you automate this process — freeing you to react quickly without constant checking.

How to get started

Getting up and running with Steam-Market-Multi-Watcher is fairly straightforward (requires some comfort with basic server or PHP usage):

  • Clone the repository using Git.
  • Edit the items.json file to include the Steam Market item names you want to watch — and set your target prices.
  • Start the built-in web server (e.g., php -S 0.0.0.0:8080) and open the dashboard in your browser.
  • (Optional) Add your Discord webhook URL to get alerts when items reach your target price.
  • For 24/7 tracking, run the CLI version (or use a server / Docker container / other background process) and let it monitor continuously.

What to keep in mind

  • The tool uses undocumented Steam endpoints (for example the priceoverview endpoint) to get price data. Steam rate-limits these endpoints, so it’s important to use moderate polling intervals and rely on caching.
  • Not all items on Steam are tradable or market-enabled; some games/items may not support listing on the Steam Market.
  • Because price data comes from a public endpoint (rather than an official, fully documented API), reliability isn’t guaranteed. Still — for many users, the convenience and automation outweigh the occasional inconsistencies.

Final thoughts: Why I built — and you might want to use — Steam-Market-Multi-Watcher

I built Steam-Market-Multi-Watcher to scratch a personal itch: track multiple skins / items without constantly refreshing pages or risking missing a deal. It turns the Steam Market from a frustrating browsing session into a passive, automated process. If you’re into trading, flipping, or just keeping an eye on rare items — this watcher can save you time and stress.

If you decide to test it out, I’d love to hear back: what works, what doesn’t, and what features you might want next. Happy trading! 🎯

https://github.com/blubtxt/Steam-Market-Multi-Watcher

[WordPress] Letterboxd Plugin Update

Today i updated my Letterboxd Plugin for WordPress.
I used two different plugins for the sidebar the whole time, one for the activity and the other for the reviews.

Now i have put both plugins together.
We continue to use the Letterboxd RSS feed to get the data. The Letterboxd API is still in private beta.

If you are interested or run into issues, feel free to get on touch.

The Update is available on Github.
https://github.com/blubtxt/Wordpress-Letterboxd-Activity

Open Bug Bounty WordPress Plugin

I started working on a WordPress plugin for Open Bug Bounty Project.
The current status can be seen on the right.

I want to display a small section from the researcher’s statistics page.
The Open Bug Bounty Project does not provide an API to get this Information.

So I’m currently playing with wp_remote_get from the WordPress HTTP API.

wp_remote_get( string $url, array $args = array() )

I use wp_remote_get to get the full researcher’s profile page. Than filter out all unrelated stuff und beautify the output.

If you are interested or run into issues, feel free to get on touch.

[Open Bug Bounty] Sicherheitslücken suchen zum Spaß und Profit

Was ist Open Bug Bounty
Das Open Bug Bounty Projekt ist eine Platform welche Website Betreibern ermöglicht auf transparente, faire und koordinierte Weise Hilfe und Unterstützung von Sicherheitsforschern zu erhalten, um Webandwendungen sicherer zu machen.

www.openbugbounty.org

Ich bin dort mehr oder weniger aktiv seit dem Jahr 2016. Man benötigt nur einen Twitter Account um sich auf der Seite zu registrieren.
Nun benötigt man noch ein wenig Kenntnisse im Bereich Web Sicherheit um die Webseiten auf Sicherheitslücken abzuklopfen.

Seit 2016 habe ich aktuell 131 Sicherheitslücken auf Open Bug Bounty gemeldet, 82 Sicherheitslücken davon wurden von den jeweiligen Website Betreiben beseitigt. Die Betreiber werden automatisch kontaktiert, leider sind noch immer genug Seiten auf Open Bug Bounty registriert bzw. viele Seiten sind ohne Kontaktinformation.

Mein Open Bug Bounty Profil

Nachdem eine Lücke gemeldet wurde wird der Betreiber automatisch benachrichtigt. Sind keine Kontaktinformation hinterlegt kann dies auch händisch geschehen. Dieser kann sich dann mit dem Finder der Lücke in Verbindung setzen und gemeinsam daran arbeitet die Lücke zu beseitigen.

Die Lücken werden einen bestimmten Zeitraum bis zur Beseitigung der Lücke vertraulich behandelt. Nach dem die Lücke behoben wurde oder der Zeitraum abgelaufen ist, kann jeder die Lücke einsehen.

Viele Lücken auf Open Bug Bounty werden automatisiert gesucht und gemeldet. Meine Lücken die ich gefunden habe sind beim normalen Surfen aufgefallen. Einige davon waren Lücken in einem CMS (Content-Management-System) dadurch konnte ich die gleiche Lücke auf verschiedenen Seiten finden und melden.

Bei Sicherheitslücken auf größeren Seiten besteht die Möglichkeit eine Belohnung vom Betreiber der Seite zu erhalten, dies gehört aber nicht zur Regel und sollte auch nicht die Intention sein.

[Shopware] Social Media Buttons im Footer

Social Media Buttons im Footer hinzufügen mit Hilfe von Font Awesome icons.

Änderungen sollten immer in einem eigenen Theme gemacht werden. Bei Änderungen im Bare oder Responsive Theme können diese bei einem Update überschrieben werden.

Ein eigenes Theme kann mit Hilfe des Theme Manager im Backend erstellt werden.

1. Font Awesome einbinden

Falls noch nicht vorhanden nicht vorhanden folgende Datei erstellen.

themes/Frontend/Name_des_themes/frontend/index/header.tpl

In diese Datei fügen wir zuerst folgendes ein:

{extends file="parent:frontend/index/header.tpl"}

Hiermit erweitern wir den Originalinhalt mit unserem Code.

Und nun fügen wir folgendes ein:

{block name="frontend_index_header_css_screen"}
	{$smarty.block.parent}
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css">
{/block}

2. Buttons einfügen

Jetzt benötigen wir folgende Datei.

themes/Frontend/Name_des_themes/frontend/index/footer-navigation.tpl

Dort fügen wir folgendes ein.

{namespace name="frontend/index/menu_footer"}
{extends file="parent:frontend/index/footer-navigation.tpl"}
{block name="frontend_index_footer_column_service_menu"}
    <div class="footer--column column--menu block">
        {block name="frontend_index_footer_column_service_menu_headline"}
            <div class="column--headline">{s name="sFooterSocialMedia"}{/s}</div>
        {/block}

        {block name="frontend_index_footer_column_service_menu_content"}
            <nav class="column--navigation column--content">
                <ul class="em-social-links">
                    <li><a href="https://twitter.com/blub_txt" target="_blank"><i class="fab fa-twitter-square"></i></a></li>
                    <li><a href="https://www.instagram.com/jnstr_/" target="_blank"><i class="fab fa-instagram"></i></a></li>  
                    <li><a href="mailto:admin@hamsterbaum.de" target="_blank"><i class="fas fa-envelope"></i></a></li>   
                </ul>
            </nav>
        {/block}
    </div>
{/block}

Die eingefügten Links sollten natürlich geändert werden.

3. CSS

Wir erstellen folgende Datei.

themes/Frontend/Name_des_themes/frontend/_public/src/less/all.less

Dort fügen wir folgende Zeile ein:

@import "_mixins/social_media_icons";

Nun müssen wir noch diese Datei erstellen.

themes/Frontend/Name_des_themes/frontend/_public/src/less/_mixins/social_media_icons.less

Dort fügen wir folgenden CSS Code ein.

.em-social-links {
font-size: 40px;
}

.em-social-links li {
display: inline;
}

.em-social-links li a {
display: inline;
transition: opacity .3s ease-in-out;
}

.em-social-links li a:hover {
opacity: 0.6;
transition: opacity .3s ease-in-out;
}

.em-social-links li a i.fa-facebook {
color: #3b5998;
}

.em-social-links li a i.fa-twitter-square {
color: #55acee;
}

4. Textbaustein hinzufügen

Zum Abschluss müssen wir noch einen neuen Textbaustein hinzufügen.
Dies geschieht im Backend/Einstellungen unter Textbausteine.

Textbaustein hinzufügen mit folgenden Werten:

5. Theme neu kompilieren und Cache leeren

Als Letzten muss nun nur noch das Theme neu kompiliert werden, dies geschieht im Theme Manager.
Nach dem leeren des Caches sollten die neuen Social Media Buttons im Footer erscheinen.

[Food] Schneller Erdbeer Milchshake

Dies dient eher als Notiz an mich, möchte dieses Rezept aber niemandem vorenthalten.

Rezept für einen schneller Erdbeer Milchshake:

Zutaten:

    • 500g TK-Erdbeeren
    • 100g Zucker
    • 1 Pck. Vanillezucker
    • ca. 1 Liter Milch
    • Küchenmixer

Info:

Es sollte auch mit frischen Erdbeeren funktionieren. Der Vorteil von gefrorenen Erdbeeren ist es muss nichts mehr kalt gestellt werden, sondern man kann ihn sofort genießen.
Wir pflücken oder kaufen uns Erdbeeren, waschen/putzen sie und frieren sie selber ein.

Zubereitung:

    1. Die gefrorenen Erdbeeren in den Küchenmixer/Standmixer geben.
    2. Das Päckchen Vanillezucker hinzugeben.
    3. Den Zucker hinzugeben. Menge kann je nach Belieben variiert werden.
    4. Mit Milch bis kurz vor den Rand auffüllen. (Achtung: nicht zu viel, dass es beim Mixen überläuft.
    5. Mixen.
    6. Fertig!
    Erdbeer shake
    Erdbeer shake

[WordPress] Ganzen Beitrag anstatt Auszüge anzeigen

Viele WordPress Themes zeigen, auf der Startseite, nur noch Auszüge der letzten Beiträge an.
Ich wünsche mir aber, wie bei meinem alten Theme unter Flatpress (Link), dass der gesamte Beitrag angezeigt wird.

Leider gibt es in den WordPress Einstellungen keine Option dazu. Desahlb müssen wir einen kleinen Eingriff in den Quellcode des Themes tätigen.
Eigentlich müssen wir nur die Funktion suchen, welche dafür zuständig ist den Auszug eines Beitrags zu anzuzeigen und diese ersetzen mit der Funktion die den kompletten Beitrag anzeigt.

Die Funktion für den Auszug eines Beitrags nennt sich the_excerpt() (Link) und die für den ganzen Beitrag the_content() (Link).

Wenn man nicht weiß wo zu Suchen ist, ist es am einfachsten alle Dateien des Themes nach dem Begriff the_excerpt() zu durchsuchen.

In meinem Fall und bei meinem verwendeten Themes wird man in der Datei template-tags.php fündig.

Dort findet man die Funktion welche the_excerpt() aufruft.

function thesimplest_excerpt( $class = 'entry-summary' ) 
{
    $class = esc_attr( $class );

    if( ! is_single() ) : ?>
        <div class="<?php echo $class; ?>">
             <?php the_excerpt(); ?>
        </div>
    <?php endif;
}

 

Diese Funkion ist unter anderem dafür zuständig die Auszüge auf der Startseite anzuzeigen. In dem wir nun the_excerpt() mit the_content() austauschen und die Datei neu hochladen erreichen wir das nun die gesamten Beiträge angezeigt werden.

Die geänderte Funktion schaut nun so aus.

function thesimplest_excerpt( $class = 'entry-summary' ) 
{
    $class = esc_attr( $class );

    if( ! is_single() ) : ?>
        <div class="<?php echo $class; ?>">
             <?php the_content(); ?>
        </div>
    <?php endif;
}

 

[macOS] opendirectoryd. Too many corpses being created

Heute Morgen war mein Gedanke, kurz was am Rechner nachschauen. Also am Mini den Knopf gedrückt und nochmal auf das Handy geschaut bis der Kleine gebootet hat, dauert mittlerweile ein bisschen der Kleine hat bald 10 Jahre auf dem Buckel.

Normal sehe ich dann, nach einem kurzen Moment, im Augenwinkel mein Wallpaper und komme am Handy zum Ende. Aber dieses Mal nicht.

Er hing immer noch im Ladebild und die Leiste bewegte sich nicht mehr. Das Gleiche nach einem Neustart.

Etwas ähnliches hatte ich schonmal als meine Festplatte voll war, also im Einzelbenutzermodus (Single User Mode) gestartet: (COMMAND + S)
Und angefangen Filme zu löschen danach einmal Neustart, aber keine Besserung.

Alse im Verbose Mode gebootet. (COMMAND + V)

Und schauen wann es nicht mehr weiter geht.
Nach einer Weile bleibt er mit folgenden Zeilen hängen.


Process[XXX] crashed: opendirectoryd. Too many corpses being created.
Process[XXX] crashed: opendirectoryd. Too many corpses being created.
Process[XXX] crashed: opendirectoryd. Too many corpses being created.

Hier meine Lösung.

Es betrifft meinen Mac mini (Mitte 2011). Installiert ist macOS Mojave in der Version 10.14.6 .
Installiert wurde Mojave mit Hilfe des macOS Mojave Patcher. Link
Was nie irgendwelche Probleme machte, bis jetzt.

Booten im Single User Mode (COMMAND + S)

Das Dateisystem mounten um Änderungen zu machen.

mount -uw /

Danach cd in folgenden Ordner springen.

cd var/db/caches/opendirectory/

Dort den Cache mit folgendem Befehl umbennen.

mv ./mbr_cache ./mbr_cache_old

Zu guter Letzt ein Neustart

reboot

Nun sollte der Mac wieder normal starten.