Live data from Hacker News

Show HN: AudioGata, a plugin based Web Audio player

github.com

1–3 of 3 posts

Re: Show HN: AudioGata, a plugin based Web Audio player

#2
Hello, over the course of the year I've been creating web apps that can utilizes user created plugins to access data and provide playback from third party apis.

The plugins use sandboxed iframes on their own subdomain in order to safely run the the user's code. It works similarly to what is described in the figma blog post [0] about their first attempt to create a plugin system using iframes. Currently, audiogata's plugin system is pretty simple and most plugin methods are there for audiogata to pull data from the plugin so the problems they outlined aren't as big as issue for this application.

Also, because certain plugins like spotify-audiogata use the official playback api, it is necessary to use iframes with allow-same-origin set in order for them to function properly. Because of that, the plugin code is ran on it's own domain separate from the host application for security reasons.

I've also created VideoGata [1] which is the same as audiogata but for video.

[0] https://www.figma.com/blog/how-we-built-the-figma-plugin-sys...

[1] https://github.com/InfoGata/videogata

Re: Show HN: AudioGata, a plugin based Web Audio player

#3
Building plugin-based web apps is the way to go. The HN crowd is so vehemently against any added features, that I always wished HN was a plugin based web app itself. Userscripts and extensions are less neat and powerful.

I like audiogata. It is good for creating playlists from different sources. For me, what Spotify does not have, could be supplemented from other sources. This is also the way to go: The true universal music player.

Two suggestions:

- A lot faster way than adding tracks one by one by search, will be to accept a text format (or clipboard paste) of a list of URLs. IMO this is easy to implement.

- A lot tricker, is to allow for simple text file in the format [Artist – Track] to be imported by resolving each line through a search. This is what the, now defunct, Tomahawk player [1] did.

[1] https://github.com/tomahawk-player/tomahawk-resolvers