worthbak / inventory-checker-app Goto Github PK
View Code? Open in Web Editor NEWA macOS app for checking Apple Store inventory
Home Page: https://worthbak.github.io/inventory-checker-app/
License: GNU General Public License v3.0
A macOS app for checking Apple Store inventory
Home Page: https://worthbak.github.io/inventory-checker-app/
License: GNU General Public License v3.0
Thank you for everything you do, would you consider adding support for the Apple Watch lineup? Thanks!
Could you please add the new iPhone 14 pro Models. thanks
I would like to submit a PR to add the M2 (8c CPU, 10c GPU) 16GB/1TB Silver
config for the m2 Macbook Air but how do I go about finding the SKU number for this config?
Thank you!
Hello,
Great work for creating this app.
It would be great if support for Thailand could be added. I've looked at your source code but do not have the bandwidth nor known Swift enough to be able to test my changes.
However I was able to pinpoint places that need to be added.
(InventoryWatch/Countries.swift)
Country Code: TH
Country(
name: "Thailand",
storePathComponent: "/th",
skuCode: "TH",
altSkuCode: nil
),
Thanks for this great App. I'm wondering can you add email notification? So that we don't need to keep watching it.
Would be nice to have the keyboard type displayed (English, French Canada, ect)
Thanks!
Hey! I read your reddit posts and wanted to see if support for Japans stores could be added (or at least Tokyo).
I think this was such a great idea for a script. I have been so frustrated trying to put in an order for the last few weeks that I thought of writing a script like this myself, but you beat me to it!
Thank you for contributing such a neat little program, and I really hope it could be up and running here in Japan!
When I changed the "update every" part of settings from "1 minute" to "never", the main window refreshed constantly and alerts popped up quickly (my search had matches).
I don't know if my particular settings are necessary to trigger this, but I had "notify only for preferred models" and "only show results for preferred models" checked.
Can you pleas add France in the countries ? Thanks.
Hey,
hopp this will be a quick fix, could you please add Alpine Green as color option to the list of iPhone 13 models (valid for all models)?
Thanks,
Marcus
I did not get all of them, but added Silver back and also the 24GB SKUs. Not sure why the SKU pattern changes so I had to include extra bits after the (country.skuCode) in some cases
func M2MBAirDataForCountry(_ country: Country) -> SKUData {
let orderedSkus = [
// 8GB/256GB
"MLY33\(country.skuCode)/A",
"MLXW3\(country.skuCode)/A",
"MLY13\(country.skuCode)/A",
"MLXY3\(country.skuCode)/A",
// 8GB/512GB
"MLY43\(country.skuCode)/A",
"MLXX3\(country.skuCode)/A",
"MLY23\(country.skuCode)/A",
"MLY03\(country.skuCode)/A",
// 16GB/1TB
"MN703\(country.skuCode)A13/A",
"MNQP3\(country.skuCode)A4/A",
"MN6Y3\(country.skuCode)A4/A",
"MLY03\(country.skuCode)A4/A",
// 24GB/1TB
"MLY43\(country.skuCode)A7/A",
"MLXX3\(country.skuCode)A16/A",
"MLY23\(country.skuCode)A7/A",
"MLY03\(country.skuCode)A16/A",
// 24GB/2TB
"MLY43\(country.skuCode)A17/A",
"MLXX3\(country.skuCode)A8/A",
"MLY23\(country.skuCode)A8/A",
"MLY03\(country.skuCode)A17/A"
]
let skusToName = [
// 8GB/256GB
"MLY33\(country.skuCode)/A": "M2 (8c CPU, 8c GPU) 8GB/256GB Midnight",
"MLXW3\(country.skuCode)/A": "M2 (8c CPU, 8c GPU) 8GB/256GB Space Gray",
"MLY13\(country.skuCode)/A": "M2 (8c CPU, 8c GPU) 8GB/256GB Starlight",
"MLXY3\(country.skuCode)/A": "M2 (8c CPU, 8c GPU) 8GB/256GB Silver",
// 8GB/512GB
"MLY43\(country.skuCode)/A": "M2 (8c CPU, 10c GPU) 8GB/512GB Midnight",
"MLXX3\(country.skuCode)/A": "M2 (8c CPU, 10c GPU) 8GB/512GB Space Gray",
"MLY23\(country.skuCode)/A": "M2 (8c CPU, 10c GPU) 8GB/512GB Starlight",
"MLY03\(country.skuCode)/A": "M2 (8c CPU, 10c GPU) 8GB/512GB Silver",
// 16GB/1TB
"MN703\(country.skuCode)A13/A": "M2 (8c CPU, 10c GPU) 16GB/1TB Midnight",
"MNQP3\(country.skuCode)A4/A": "M2 (8c CPU, 10c GPU) 16GB/1TB Space Gray",
"MN6Y3\(country.skuCode)A4/A": "M2 (8c CPU, 10c GPU) 16GB/1TB Starlight",
"MLY03\(country.skuCode)A4/A": "M2 (8c CPU, 10c GPU) 16GB/1TB Silver",
// 24GB/1TB
"MLY43\(country.skuCode)A7/A": "M2 (8c CPU, 10c GPU) 24GB/1TB Midnight",
"MLXX3\(country.skuCode)A16/A": "M2 (8c CPU, 10c GPU) 24GB/1TB Space Gray",
"MLY23\(country.skuCode)A7/A": "M2 (8c CPU, 10c GPU) 24GB/1TB Starlight",
"MLY03\(country.skuCode)A16/A": "M2 (8c CPU, 10c GPU) 24GB/1TB Silver",
// 24GB/2TB
"MLY43\(country.skuCode)A17/A": "M2 (8c CPU, 10c GPU) 24GB/2TB Midnight",
"MLXX3\(country.skuCode)A8/A": "M2 (8c CPU, 10c GPU) 24GB/2TB Space Gray",
"MLY23\(country.skuCode)A8/A": "M2 (8c CPU, 10c GPU) 24GB/2TB Starlight",
"MLY03\(country.skuCode)A17/A": "M2 (8c CPU, 10c GPU) 24GB/2TB Silver"
]
return SKUData(orderedSKUs: orderedSkus, lookup: skusToName)
Request if you could kindly add stock search support for Singapore apple stores.
How is it able to continuously check what devices are in stock at Apple stores?
Can this be made in to a simple api call that doesn’t need a mac to run the app?
I want to but a Mac ;) I don’t have one
Just discovered this tool (thanks for putting it together and maintaining it!) and discovered that a few SKUs appear to be flipped for the baseline 16" machines
Specifically these 4 lines are swapped between the 512GB and the 1TB models. For example, MK183(country)/A is the model with the 512 GB SSD, not the 1TB as the file indicates. This is confirmed by looking up the individual model numbers as well as cross-checking what the tool reports as in stock against Apple's inventory on the store pages.
The problem appears to have been introduced in this commit, and affects MK183, MK193, MK1E3, and MK1F3.
Can you add Italy in the countries, please? Many Thanks!
Refer to here, Australia is spelled as Austraiia, not Australia.
Thank you!
It would be great if there is support for windows systems. Increases user base.
It would be great if there were some custom notification options for when our preferred inventory becomes available, e.g. send an email, run a script, etc. Thanks!
Possible solution: query Github API and compare latest version with app version. If they don't match, prompt user to download the latest version.
Auto-updating functionality is currently not in the roadmap.
Love the product 👌 Would be great if stores in the Netherlands would be supported. The stores are there, seems only the country is missing. I was able to make it work for some products (tested the Studio & Studio Display) with just these changes:
diff --git a/InventoryWatch/Countries.swift b/InventoryWatch/Countries.swift
index 2f7b59b..986e730 100644
--- a/InventoryWatch/Countries.swift
+++ b/InventoryWatch/Countries.swift
@@ -63,7 +63,8 @@ let Countries: [String: Country] = [
"FR": Country(name: "France", storePathComponent: "/fr", skuCode: "FN"),
"IT": Country(name: "Italy", storePathComponent: "/it", skuCode: "T"),
"JP": Country(name: "Japan", storePathComponent: "/jp", skuCode: "J"),
- "AT": Country(name: "Austria", storePathComponent: "/at", skuCode: "D")
+ "AT": Country(name: "Austria", storePathComponent: "/at", skuCode: "D"),
+ "NL": Country(name: "Netherlands", storePathComponent: "/nl", skuCode: "FN")
];
let OrderedCountries = [
@@ -77,5 +78,6 @@ let OrderedCountries = [
"FR",
"IT",
"JP",
- "AT"
+ "AT",
+ "NL"
]
It doesn't work for MacBooks, and I am not certain what needs to be changed for them.
Since these are hard to find in stock, this would be a nice to have. The custom SKU field works for finding a specific model but would be nice to see inventory of all or multiple models.
It would be great to add Chinese product searches, thank you very much
Please add the option to query multiple stores, and email/text notifications
No models available shown though models available through online
Would be nice if Austria‘s only Apple Store in Vienna could be added.
In macOS 13.0 and beyond, with the change from Preferences to Settings, the Button to the settings window no longer works.
NSApp .sendAction(Selector(("showPreferencesWindow:")), to: nil, from: nil) }
has been deprecated and replaced with:
NSApp .sendAction(Selector(("showSettingsWindow:")), to: nil, from: nil) }
I am unsure if it's backwards compatible, though.
Apple Store Switzerland Zurich Renneweg is in the list but cant be seleced do to country Switzerland missing from the country list.
The notifications don't indicate where the location of the available devices are. It's not very useful omitting the location as you'd need to be staring at the app itself or switch to it every time a notification pops up to see if your closest location has the device. Another solution might be to allow only a specified location to show notifications if preferred perhaps.
Hi, I know this is probably an over used request. Would it be possible to update with some of the newer product SKU's?
In particular the new Studio hardware (Display and Mac). Several different permutations even for the Monitor and it's going to be tough to get by the looks of it.
Thanks!
Thanks
It would be awesome to be able to track multiple items at once - for instance, a Mac Studio AND a Studio Display.
Great work on this project!
Thank for your hard work!
If could ,Can you add Taiwan in the support list?
Sorry for my bad English.
Thank you!
In the Settings, I set Canada and select any of the Canadian stores with Mac Studio or Studio Display product type...Inventory Checker reports "Unexpected inventory data found. Please confirm that the selected store is valid for the selected country."
If I step through the code using Xcode, errorMessage in ModelError is reporting .noStoresFound.
If I switch to any other product type, Inventory Checker works correctly.
Placeholder issue for adding the iPhone 14 / Pro SKUs
Can you please add support for the M2 MacBook Air?
https://www.apple.com/shop/product/MLY03LL/A
Thank you 👏
It would be great if we could get support for Sweden. Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.