Homer 2 is an excellent resource for conducting fNIRS data analysis.
Homer2 consists of multiple Matlab scripts that can be used on their own or through an user interface. At the time this research was performed, Homer2 was used, now Homer3 is available. The new features are described on the linked GitHub page, one of the most important being the use of the SNIRF file format for storing the data. If you are just starting out with fNIRS analysis, it is probably better to start with Homer3.
Homer can be used either through the GUI or by calling the individual Matlab functions in a script. While the first approach allows going from data to results relatively fast, the second approach can help build a better understanding of how various filters operate on the data, especially in the case of removing artefacts.
More details about how Homer2 was used in this research can be found in this paper: Argyle, E. M., Marinescu, A., Wilson, M. L., Lawson, G., & Sharples, S. Physiological indicators of task demand, fatigue, and cognition in future digital manufacturing environments. International Journal of Human-Computer Studies, 145, 102522.
Another very good paper discussing fNIRS data processing: Pinti, P., Scholkmann, F., Hamilton, A., Burgess, P., & Tachtsidis, I. (2019). Current status and issues regarding pre-processing of fNIRS neuroimaging data: an investigation of diverse signal filtering methods within a general linear model framework. Frontiers in human neuroscience, 12, 505.