How to treat post formats?

If you are developing your own theme (as you have indicated in your question), depending on the level of coding you want to get into, you are probably better off using one. Having said that it is certainly possible to do so without them, but this is what you’re going to have to look at:

  1. custom fields for the data to be displayed. In your quote example, I would just use the standard content field to store the actual quote, but then create an author or source custom field to hold that information (personally I’m going to store the source in the post title).

  2. In your theme’s functions.php file you will include the relevant hooks create a source text field for user input in the post creation admin area

  3. In your theme’s single.php or style.css you would include the relevant mark-up and styling to present your extra field.

The last two would be very easily implemented utilising various plugins and one such plugin would be “Advanced Custom Fields” (I have no affiliation other than I use this plugin myself). Their website includes many examples on how to do just this (their home page includes all the info for adding a hero image to a post).