Question: This is more a theory question than anything else. 

I've been tasked at creating a website for a client that involves users looking up an item x. A json file that holds all the item data will be searched and the resulting data about that item is presented.

I'm using React as my front end for this, so I'm guessing I need to use Express as my back end? What are all the packages needed to make this work, and if anyone knows of a guide or tutorial or even an npm package that gives this basic infrastructure it would be hugely appreciated. 

I've managed to get this working all client side, but I'm worried for efficiency, as the data im currently using is only 19k lines long as is just a subset of the full data so I dont think this is going to work at when the subset json is replaced with the full thing. 

I have the data also stored in an excel sheet, if this would be better for server side than json?

Answer: 
Look firstly you have to concentrate you project architecture.Architecture mainly responsible for which technology you will use.As description form you about your project,nodejs(express) and mongodb is perfect for you.

if you want to work with express and mongodb there you need some npm packages like express,morgan,body-parser,mongoose here more then these.

and nodejs is suitable as back-end technology for react.

you can follow [this](https://www.youtube.com/watch?v=WDrU305J1yw) tutorial for getting primary concept. 

Thank-you :)
i think you need to store your data at mongodb database, for that you need some packages:  

1- express for server side  

2- mongoose to deal with mongodb  

3- body-parser to hold post requests from user  

those are the basic packages you need, in case there will be authentication & authorization at your application you will need more packages:  

passport & passport-local & passport-local-mongoose and express-session.