@vladucoju we are going through the same thing, and for us, we decided against customizing to do opportunity → project, but our case may be different. Some of our sales team wanted to have projects be associated to an opportunity to track tasks, but I felt that projects should be kept for paying customers rather than leads. Closing an opportunity has a very different mindset than completing a project.
However, if you want to be able to link the opportunity to a project for a closed deal (customer), you could add a custom field with a link to opportunity, and have them filtered by the customer.
The opportunity steps / stages could be expanded as a child-table of tasks similar to the project view - something I am looking into but on my long list of to-dos. Same for contacts, since for longer / larger opportunities with many steps you do have to keep track of a handful of contacts.