The hardware that you should look at for running hope assistant depends greatly on your plans and requirements
https://www.home-assistant.io/green/
This is a great product if you are just starting out and want to learn. It allows you to jump in without alot of complicated setup.
It is however limited as it is a very low poer and low performence hardwaree. If you are looking to run alot of addons (an addon is not an integration) to run addition services then you will find the green will get bogged down
realisically If you want voice assistants you will need to run them on another system or in the cloud for example with:
https://www.home-assistant.io/yellow/
This is another great product and is a step up from the Green. it runs on a compute module RPI and you have the choice of a CM4 or a CM5. the CM5 will give you better performence than the CM4 by quite a bit and probably worth it if you go this route.
Its other advantages include
M.2 slot for SSD to store your data on.
Built in Zigbee/Thread Radio
Optional PoE version.
Depending on which CM you put into this device it will give you decent performence for alot of extras in a nice package.
This will run voice locally but it wont be quick
I do not recommend this approach, however if you want to try out home assistant for the first time and have one laying around then go for it. but It is not worth buying into this hardware for home assistant.
if your going to use a RPI then a 5 would be the way to go
A 4 will run HA fine but a 5 would be better
it will be slow and you will have a sad time when trying to do anything more than very basic operations
You may be able to get it working but you will have problems and its a bad idea
Like the yellow that uses the CM counterparts it will run voice locally but it will be slow
it will be slow and it will die, and when it dies it will be at a bad time
However for short time learning with what you have laying around then go for it, just ensure you have backups storaged somewhere other than the sd card itself.
using a RPI 4 or 5 with a SSD hat does work nicely however the issue is that by the time you buy:
Raspberry Pi
SSD Hat
M.2 SSD
Case
Power Adaptor
You are spending enough money that you are better off going with the next category: The Mini PC
A Low power full x86_64 PC is what I normally recommend for those that are looking to have something flexible and have some room to grow
There are various older mini pc and thin clients around and can be a great budget option but will be less power efficient then newer hardware.
A system with an Intel N100 CPU is the minimum recomended for running local voice comfortably.
These are avaialable from various manufacturers and realistically there isnt alot of different between them. However I do recommend Beelink as i have had good experiences with them.
https://www.bee-link.com/products/beelink-mini-s12-pro-n100
This is my go to recommendation for a mini PC
it comes with: n100 CPU/16GB RAM/500GB SSD
which is plenty for running home assistant (and more if you want to)
NB: The S12 Pro
is starting to be replaced by the S13
in many placees. its still a great device and if you can get a good deal on it then its a great option but availability will probably fade
https://www.bee-link.com/products/beelink-eq14-n150
This is what I personally run home assistant on but I do not nessasarily recommend it.
has a built in PSU so AC goes straight in without needed a power brick
has a newer N150 CPU (however performance increase is almost nothing in most cases)
Has an additional m.2 Slot
More Expensive
slightly less pwoer efficient
the newer hardware (specifically the iGPU) is less well supported.
The extra m.2 slot is why I went with this model as I added a Internal Coral TPU
the hardware support issue is less of an issue if you use a kernel version 6.9 or above. which is now the case in HAOS 15.0 (which used 6.12)
However if your virtualizing (which we will get to below) with proxmox then it currently comes with 6.1 as its base kernel as its debian bookworm LTS kernel with 6.8 able to come easily with update. howeever proxmox have a built 6.11 kernel in the repo which can easily be installed from the command line (there may be a higher one by the time you are reading this)
NB: This looks like it wont be an issue when PVE9 is released (currently in beta as of writing)
So in most cases i would recomend the cheaper better supported N100 system over the N150. unless you really want the extra m.2 slot.
This is a newer version of the S12
and updates from the n100 to the n150 cpu and also updates the lan to include dual 2.5gbe.
the S12 pro
is still a great device but availability may start to change over time.
if there is not alot of difference in price getting the newer one makes sense but its not a huge difference.
as with the EQ14 above proxmox will require you to update the kernel in order for the iGPU to work. NB: This looks like it wont be an issue when PVE9 is released (currently in beta as of writing)
If you have at least 16GB (which most mini pc's will have) of Ram then I recommend virtualizing with proxmox. you can do it on 8gb too but you wont want to be running any other VM's unless they are tiny but probably stil recommend virtualizing anyway.
with proxmox you can install HAOS with the community helper script here:
https://community-scripts.github.io/ProxmoxVE/scripts?id=haos-vm
which sets up a VM with HAOS installed
you may have to change thee cpu type on the VM to "host" for better performence
virtualizing gives you easy control over making backups/snapshots, having essentually physical access via the browser which is great if you ever have to reinstall.
if you want to migrate to different hardware then you can just take the VM with you.
UPDATE: I have made a video guide about installing proxmox on a mini pc and installing the HAOS VM https://www.youtube.com/watch?v=8pxfuXXd1Ds Guide uses a Beelink S13 and shows the process from unboxing to up and running.
Running bare metal has almost no beinfit unless you are on limited hardware and cant afford the memory ovehead. there is technically a performence hit but with modern hypervisors like proxmox it is very miminal.
its also harder to install (and potentially reinstall) in alot of cases as HAOS doesn't haave an "installer" per se
The Beelink EQ14 with a coral TPU inside
I run HAOS in a VM
Then I have a LXC container which I use as a dockerhost and use it to run Frigate NVR with object detection
I also have an older External drive attached/mounted and then mounted within the frigate docker container so the NVR can use it for its storagte.
Both the system and the drive sit on a rackshelf in my Rack nicely.
This works great for me. it might struggle if i added too many cameras but for a few it works perfectly.