Nafeon the Beaw, well VK had two types of apps that run on the website itself: flash and iframe. For flash apps, you just upload an swf file (there was later the ability to add extra swfs in case e.g. it's a game and you want to load your levels as needed). For iframe apps, you specify a URL that is loaded in an iframe with a bunch of parameters passed to it. In both cases, you get a client-side API for things like dynamically changing the size of your embed/iframe and asking the user for extra permissions.
For the fediverse specifically, I strongly dislike how MastoAPI lacks global app identifiers. I want to make the oauth client_id
be a URL that points to an ActivityPub Application object. This way you have both global app IDs and metadata. Since Smithereen is so vastly different in functionality from Mastodon and Pleroma and other microblogging servers, I'm going to do this when I get to building my client API.
@grishka do you know if friendica handles it better than the microblogging services?