in general, /etc/puppet/manifests/site.pp is the entry point of puppet manifests, the content always be [import 'nodes/*.pp'].
create pp file in /etc/puppet/manifests/nodes directory to save your all node definitions.
node definition contains variables, expressions, classes. it defines which function should run in your servers, like nginx, memcached or tomcat. and the port that your want your application listen, memory size or other parameter it use. pass it to the classes which do the actually things.
the nginx class contains package, service, file resources, accept assigned parameters do the installation, configuration steps.(actually it ensure nginx package is installed and nginx service is running)
is that ok for you?
ps: excuse my syntax, I'm Chinese.