This is an "Unreal Engine 4" UE4 project (using only Blueprints and the VARest Plugin), that gets data from various Rest APIs and then visualizes that data in various formats (e.g. charts, "racks", block layout of nested json data, etc).
Note: For an "Unreal Engine 5" UE5 version (built on top of the Lyra example project) see here... https://github.com/mpursley/Lyra_Inventory
- Kubernetes API: using "http://localhost:8080" (e.g. from local docker desktop, Google GCP/GKE, AWS EKS, https://unrealcontainers.com/, etc)
- Prometheus Metrics: Load Prometheus metrics from the standard Prometheus API into charts/graphs.
- Financial Prices: (e.g. Stocks, BTC Bitcoin, ETH Ethereum, etc) Loads historical (e.g. last hour) prices for any Crypto token price from https://min-api.cryptocompare.com.
- Web Images: using the UE builting Download Image node. Allow to load any number of "screens" that can have any images from the web attached. Use "I" to spawn a new screen, "O" to remove the nearest screen and "K" to remove all the WebImage screens.
- Click on Releases -> Release # -> Assets -> Source code (zip)
- Extract the .zip file, and open the "BP_APIs.uproject" in Unreal Engine 4 (or 5?) Editor. E.g. Unreal Editor -> File -> Open Project -> Browse -> "BP_APIs.uproject"
- Once the project is loaded, choose "Play" -> "Selected ViewPort" to start the level. This should load:
- The last 24 hour price for BTC (Bitcoin) and ETH (Ether) on the two large blue charts
- The nested json data for the BTC price API call from this Rest API URL, in the boxes on the upper left. You should be able to substitude any Rest API URL and the Blueprint should "walk" the nested json data, drawing boxes for each object item. (Warning: This BP is not heavily tested yet, ymmv. ;)
- Kubernets Node, Service and Alert data in the boxes/"racks" at the bottom left... If you're running Kubernetes in your local "Docker Desktop" install and started this to allow access to the Kubernetes API on port 8080
$ kubectl proxy --port=8080
- If you want to copy any of these assets/blueprints into another project:
- Select the Blueprints from "Content Browser" -> Content -> Blueprints -> BP_APIs -> Blueprint(s)
- Right-click the Blueprints and choose -> "Asset Actions" -> "Migrate..."
- Select the assests in the "Assest Report" window -> Ok
- Select the assets in the "Assets Report" window -> Ok -> Then, choose another Project's Content folder
- Then, you can open the other project and drop the BPs into the level.. e.g.
- Also note that the "BP_APIs_Starter" Blueprint has some "Hotkeys" for spawning and destroying the racks, charts, etc. So you might want to include that BP as well, if you want to be able to spawn racks and other parts at the Player's current location.