-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package system discussion #260
Comments
One concern I've been thinking about is where the list of packages will be kept. ie: the museeks version of https://atom.io/packages The obvious choice is to build a backend server system for this, but I think that's overkill. What I'm thinking is each package is a github repo, and we have a "plugins.json" file in the repo (or perhaps another repo, if it gets too big), which just has a list of all those github repos. Then anyone who wants to develop a new package/plugin/addon creates their repo, and submits a PR to add it to the list. |
reserverd post |
Don't know if you're interested in packing up the resources/app folder with
Just wanted to make sure that electron doesn't try to use the original folder...
I suppose this would be a production/distribution sort of build idea. |
Hey ^_^ I am currently writing a music player myself. I started some weeks ago before I even found 1. Depending on your state management, registering new UI components can be hard. The same problem occured when I tried to make I am currently thinking about building a hybrid type of state where UI components (React), reducers, routes and middlewares are added using a 2. Package manager - Hosting 3. Dependencies Just wanted to give some small inside ^^ I will probably just keep tinkering around with the player. I might come up with something useful ^^ Maybe we'Ll integrate it at some point into museeks. ^^ |
We don't have anything more internal/closed than GitHub and Gitter (that is - everything is open) I personally very much against (unbounded) extension points, I like museeks for that minimal(istic) approach:
I like that museeks treats me as owner of the music I have, and it just allows me to play it - that's the most essential part that should never be sacrificed. Next comes library management part - it is not perfect yet, but that's because it is actually pretty complex and requires a lot of thought. But again, that part should have great UX out of the box. Then comes the category of features that is kinda to hard to talk about - features (to be) implemented as/via plugins. It is hard to talk about because it is double-sided - I can see the these features being useful, but I can also live without them - hence, they are not essential. Can a player be a good one without being able to play local stuff? No. ^ all of that just an IMO, I hope it at least somewhat matches initial project vision. Btw, if you look at the #220, you'll see how much essential stuff needs to be done, even before we can say basics are done and we can think about extensions. Besides that, there are lot of stuff you can contribute to, e.g. themes are not frozen and if you have ideas on how to make them better - that's great, also: lots of under-the-hood changes are waiting to happen, different in scale and impact, that might be interesting too. |
This topic has come up a few times, so I think it'd be good to have a formal discussion about it. It is not something that we would do anytime soon, but rather a post-1.0 feature.
The basic idea would be to implement something similar to Atom's package system. So, users would go to settings, and find a list of add-on packages (and possibly themes), which could extend museeks with non-core functionality.
Some example packages:
If we model this after atom, we also might want to break out each feature into it's own package. So, for example, playlists would be a package, the player would be a package, the library would be a package, etc, and we'd have a default set of packages that come with the install, but users could uninstall parts of it if they want.
The intention of this issue is simply to have a place to discuss this idea, and whether we want to support it at all. If we decide in the future that it's something we want to do, I think we should make a separate issue (or maybe a label, with a bunch of issues) for how to implement it.
The text was updated successfully, but these errors were encountered: