Web parts are ASP.NET controls that can be added to web part zones. They are generally distributed as WSP files. Pre-2013, they could be developed off the hosting server. With 2013, WebParts for the most part have to be developed the hosting server for propery library inclusion.
I have a SharePoint App that I am creating for SharePoint Online. I am leveraging the out of the box SharePoint Snippet in Visual Studio using the listview snippet. List View Snippet: ...