I agree to the opinion that "futureproofing" is a bad idea.
You should buy something which is good today and hits a good value for your money.
That said, there are some components where it makes more sense to buy more than you currently need than others. For example you would actually be fine today with a 5 generations old CPU and you wouldn't notice the difference for gaming. But the price difference isn't high enough and of course the modern boards have a few more features.
My recommendations:
CPU
If you use the PC for gaming alone, go for the i5 ending with a 600k at most. Current generation would be i5 8600k. If you are also doing straming you can get a i7 700k, so for the current generation its a i7 8700k. It's about 50% faster and for gaming there isn't a noticable speed boost (single digit at best) and that's mainly because of the stock speed. The CPUs you will want are going with the "standard" sockets of that time. The best boards start with a z chipset. E.g. right now it's a z370 board with the socket 1151v2. "z" is necessary to use the overclock feature of your CPU (which is indicated by the K at the end) and it's extremely easy to overclock your CPU by 10% or more.
You should however not buy the enthusiast CPUs and boards. There are a couple of i7 processors and also i9 ones. The boards start with an X.
These are much more expensive and only add CPU count with actual decreased clockspeeds for single CPUs making them potentially even slower in games.
GPU
Go for what is reasonable to support the resolution you want to use right now.
If you are playing on 1080p and don't plan to go higher in the next 2 years, a gtx 1060 should do. I wouldn't buy anything faster than a gtx 1070ti as there won't be a recognizable difference, even beyond a gtx 1070 and the price step to gtx 1080 is a bit higher. If you play on 1440p pretty much all cards make sense, depending on your budget. As others mentioned multiple times I don't think that the market is ready for 4k yet as the performance needed is too high for the improvement you get. Unless you have unlimited money I wouldn't go for 4k.
You can find a pretty good benchmark-overview on PCGamer:
https://www.extremetech.com/wp-content/uploads/2017/11/GTX1070Ti-PCG.png
Be aware that these benchmarks are on high settings (besides of the medium 1080p benchmark) so on lower settings you'd also get more fps, possibly without much of a visual impact.
But you will probably not want to have far more than 60fps on the resolution you are using on highest settings as you start paying a big premium for something you don't really see. E.g. 102 frames per second on a GTX1080 on a 1080p resolution are pointless and you paid 120€ for the last 8 fps of that.
Currently I'd say that you get the best performance/money ratio for a gtx1060,1070 and 1070ti.
Once you settled on a GPU you'd need to decide for a manufacturer and model.
There isn't really much to consider here. One thing though: Do not buy any blower-style cards which push the air through the pci blend:
These are running much hotter and therefore "underclock" sooner than others.
Make sure that you see 2 fans on the picture and it should be fine. Don't chose one of the most expensive models either. You might rather want to switch to a higher GPU instead.
Besides of that it's all about the manufacturers features and reputation. E.g. EVGA is supposed to have good customer service and they have a good warranty with optional features. The ASUS Strix on the other hand offers an extra PWM Fan on your GPU so you could either control your case fans via your graphics card settings or control aftermarket GPU fans by doing so (morpheus 2) but that's more of an enthusiast thing.
Drives
Not much to decide here. Go for whatever seems to make sense to you.
However PCIe storage is too expensive for too little gain.
M.2. got more reasonable prices and is a valid option now imho (these little sticks you directly plug into your board).
Also check the warranty of your drive. E.g. samsung pro drives are made for much longer durability than their evo drives. So if you want to pay some premium for durability and reliability you can go with that.
Also probably makes sense to go with a combo of a ssd drive (250gb or more) and an classical HDD as they are still much cheaper per GB. Put your games and OS on the SSD and the other stuff on the HDD.