It's a content management system (CMS) specifically designed to serve as an e-commerce platform. It is very widespread and has a very active community, you can find a lot of help on the Internet. It's powered by PHP, but not any PHP programmer can deal with it: to know PrestaShop thoroughly is a must.
The system itself is free and open source, so all you need to get it up and running is a web hosting and a domain, since you can download and install it on your website yourself. There are also hosting providers that offer you plans with PrestaShop already installed.
There is a market for accessories (themes, and modules) to improve your online store, or add specific functionalities. You will find free resources, and of course also paid, this is where agencies and developers come into play, both independent and partners of PrestaShop.
I know and have been touching PrestaShop since its version 1.3, back in 2010. I make customizations both in appearance and at the level of operation, and develop generic and custom modules. I'm also expert in updating PrestaShop, as well as migrations.
I'm founder of PrestaImport, and project manager of this wonderful tool, which is used to import and keep updated the product catalog of your provider in your PrestaShop online store, in an automated way.