{"id":19305174,"url":"https://github.com/hussainweb/ps5-stock-watcher","last_synced_at":"2025-10-04T01:55:01.958Z","repository":{"id":74478597,"uuid":"324273967","full_name":"hussainweb/ps5-stock-watcher","owner":"hussainweb","description":"A simple PHP script based on Amphp to periodically check for PS5 stock.","archived":false,"fork":false,"pushed_at":"2020-12-31T18:35:01.000Z","size":74,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-04T01:55:01.080Z","etag":null,"topics":["ps5"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hussainweb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-25T02:42:29.000Z","updated_at":"2023-01-18T15:59:08.000Z","dependencies_parsed_at":"2023-02-24T06:45:49.380Z","dependency_job_id":null,"html_url":"https://github.com/hussainweb/ps5-stock-watcher","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hussainweb/ps5-stock-watcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hussainweb%2Fps5-stock-watcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hussainweb%2Fps5-stock-watcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hussainweb%2Fps5-stock-watcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hussainweb%2Fps5-stock-watcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hussainweb","download_url":"https://codeload.github.com/hussainweb/ps5-stock-watcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hussainweb%2Fps5-stock-watcher/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278254462,"owners_count":25956599,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-03T02:00:06.070Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ps5"],"created_at":"2024-11-09T23:35:13.248Z","updated_at":"2025-10-04T01:55:01.928Z","avatar_url":"https://github.com/hussainweb.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stock Watcher for PS5\n\nA simple PHP script based on [Amphp](https://github.com/amphp/amp) to\nperiodically check for PS5 stock.\n\n## Why?\n\nFirst, there was PS5. Then, there were scalpers and that meant that despite\nrepeated tries and following various Twitter accounts, I couldn't order one.\nThen, I kept refreshing pages periodically, but I still missed couple of sales\nthat didn't get announced or were announced at the last minute. So, here's this\nbot.\n\nNext, I wanted to try out one of these async programming libraries for PHP and\nthis seemed like a good use case. I initially considered [ReactPHP](https://github.com/reactphp/reactphp)\nbut then after looking at differences, I went with Amphp which offered async\nprogramming using coroutine style (promises seem so verbose in comparison).\n\nSo, with that decision and couple of hours one evening, I wrote this script.\nOf course, I started seeing issues and kept modifying the script to counter\nthat. The git commit log is a good documentation of what has changed since I\nwrote this.\n\n## What does this do?\n\nIt only checks for stock availability on these sites for now.\n\n- Walmart.ca\n- BestBuy.ca\n- EBGames.ca\n\nIt doesn't order automatically and I don't think I will add that. This script\njust sends an email out but that is also very primitive (just using Monolog's\nmail handler). In other words, it isn't fancy, but does the job.\n\nWalmart.ca has also started implementing captcha functionality (I wish they had\ndone that earlier and I wouldn't have to write this). This script doesn't avoid\nthat. When that happens, I open the site manually and solve the captcha.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhussainweb%2Fps5-stock-watcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhussainweb%2Fps5-stock-watcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhussainweb%2Fps5-stock-watcher/lists"}