Although you could write your own manifests for everything you want to manage, you can save yourself a lot of time and effort by using public Puppet modules wherever possible. A module in Puppet is a self-contained unit of shareable, reusable code, usually designed to manage one particular service or piece of software, such as the Apache web server.
The Puppet Forge is a public repository of Puppet modules, many of them officially supported and maintained by Puppet, and all of which you can download and use. You can browse the Forge at https://forge.puppet.com/.
One of the advantages of using a well-established tool such as Puppet is that there is a large number of mature public modules available, which cover the most common software you're likely to need. For example, here is a small selection of the things you can manage with public modules from Puppet Forge:
MySQL/PostgreSQL/SQL Server
Apache/Nginx
Java/Tomcat/PHP/Ruby/Rails
HAProxy
Amazon...