Here some practical tips for your project.
Frequency resolution
As Richard has already pointed out in his excellent answer the frequency resolution is simply the sample rate divided by the FFT length. So if you have a sample rate of $48kHz$ and an FFT length of 2400 samples, the resolution will be $f_{\Delta} = \frac{48kHz}{2400} = 20Hz$. So you FFT values would correspond to frequencies 0Hz, 20Hz, 40Hz, 60Hz, etc. If you use Matlab or Octave as a language you need to also account for that fact that these languages use index "1" for the first element, whereas most other languages (C, Python, ect) use index 0.
The FFT provides a linear frequency grid (constant absolute difference). However human hearing (and thus musical instruments) use a logarithmic pitch grid (i.e. constant relative difference). Take a look at a table that shows the frequency of the musical notes: https://pages.mtu.edu/~suits/notefreqs.html
You'll notice that the low notes are VERY close together whereas the high notes have lots of space between them. For example the two lowest notes on a 4-string bass guitar ($E_1$ and $F_1$) are less than 2.5Hz apart. That means a frequency resolution 20Hz as described above will not be sufficient to distinguish between these two notes (unless you deploy some fairly complicated math on top of it). So they choice of FFT length will depend how stationary and clean your recording is and how low you want to go.
Start with a single note
A single note on the piano does NOT consist of a single frequency. You will have so-called harmonics. For example, if you play an $A_2$ with a nominal frequency of 110Hz you will see in the spectrum 110Hz, 220Hz, 330Hz, 440Hz, etc with varying amplitudes. In fact the ratio and distribution of these amplitudes determine much of the timbre of the instrument. The nominal note called "fundamental" does not need to have the highest energy and in some cases it may be missing altogether. What determines the perceived pitch is NOT the lowest or the strongest frequency, it's the spacing between the harmonics.
Make sure you can reliably detect a single note before trying chords.
Detecting chords
Even if you look at a spectrum of a simple triad (say C, E, G), you will see a LOT of spectral lines. The trick here is to look at spacing between lines and see of there is a regular pattern that emerges. If you are lucky, the lowest frequencies with significant energy are the musical notes, but that's not always the case. However, it's a good starting point and you can use the harmonic relationship to verify any "note hypothesis".
Good luck and have fun.