Open ramijames opened 10 years ago
I've gotten some feedback and users are interested in the UI being more in sync with Sketch and the standard HIG from Apple. I've updated my sketch accordingly.
Hey, this is an excellent proposal!
Before committing to a specific design, I would like to get a better sense of the data available (as being discussed in #6 and #15). Once that's a bit more realized, I think it makes sense to use your second version here as a good starting point!
I would like to add that it would be necessary to take in to account updates of the existing plugins. Probably there is a need for two tabs with updates/installed and discover page :)
Yes, agreed.
Maybe: A 'Discover' page which only shows the plugins you don't have installed. Can be sorted by Name or # of Stars.
An 'Installed' page which shows all plugins you do have installed. Plugins with available update at the top, then the remaining sorted by name?
@shahruz Maybe an appstore like window, with 2 tabs only "Discover" and "Installed" with a search bar on the side. Such interface would be easily extensible for new features as well as be friendly to new users since they already be accustomed to it :)
I really love the idea of an "app store" like UI. It's a bit more complex but there are a lot of advantages like discoverability, scalability, clear categories, etc.
I'll go over the wireframes and post when I get a chance.
We would have to place a default image and this is really the core of my hesitation with building out an interface which is like the App Store. There are many additional complications which we don’t run into with the original UI I proposed above. Such as:
Basically, after running through a series of wireframes, I do not think that an “App Store” variant is the correct UI for solving this problem.
We need a UI which solves two key workflows:
I propose altering my original UI to include a top-level filter which shows "all available / currently installed”. This will allow the end users to find new plugins and also manage their currently installed set.
@ramijames you made great work. Regarding the appstore, I meant only navigation, the content is obviously different. The difference between your sketch and appstore would be basically the placement of "All plugins" and "installed". Having switch like in appstore has following advantages:
And there will be no need to change all your design to achieve this, you can simply locate the "All plugins" and "Installed" switch in the top header of the window :)
I really like all your ideas about the UI design and discovery but maybe we should focus on the core functionality (installing/updating plugins) for now and consider the much nicer UI for future versions.
@florianbuerger Agree that functionality is the most important at this point. However how would you consider accommodating updates feature in the UI? Maybe something like this?
This is not deviating from existing UI much, and will require minimum effort.
I totally agree that basic functionality takes priority over UI design and discovery. It's all that I can really supply for the project, so I'm starting a conversation which can hopefully have some positive impact later on.
Here is an update with the App Store tab structure on top. I've also added the description back into the list and have added a small indicator showing installed status if the plugin is installed.
This is all really great.
Assuming you've all seen the latest version that's on GitHub currently, what would you suggest is important that's left for a "beta" release within the next couple days? I've been working on this UI update, but I wonder if there's something more pressing/important that I'm missing.
@shahruz I think right now the core functionality is the biggest necessity. At the moment there are not so many plugins yet, I assume most users need simply updates and easier installation process. So making just these two things work would be already enough for most users. As the user base would be increasing there will plenty feedback and ideas :)
@timuric The version currently on GitHub has this functionality (at least it works on the two computers I've been testing on). Installing + automatic updating. Have you had a chance to try it out?
@shahruz oh really nice! So it already shows updates based on json file versioning?
Ah, no. That system isn't quite in place yet. Currently, if you have a plugin installed, it will check to see if there have been any updates pushed to it on GitHub. If so, it'll automatically update.
I think @ramijames has the right idea in his mock of allowing users to opt out of auto-updating, but I wouldn't consider that a core feature for a shippable beta.
@shahruz Yep, auto updates are good, many users of my plugin are altering the contents of it, would be bad if they would suddenly loose their modifications.
Would be nice to have push notifications for updates, since users probably would not be checking the application often. However this probably could hold for a while, maybe we could solve it with some shell startup script, or it is too complex for now?
@timuric Yes, I've been thinking about this in a couple ways.
@shahruz Maybe worth asking bohemian coding if they could include a startup scrupt into sketch that will to check for updates :D
@timuric Not entirely sure if that's even possible with sandboxing!
Here's a screenshot of what we have now, btw. Realized I haven't updated the readme in a few days.
@shahruz Btw I noticed that stars count are wrong for some reason.
it is 1199 in the here (built from latest source) http://cl.ly/ViKN Whilst 1202 here https://github.com/timuric/Content-generator-sketch-plugin
GitHub has a rate limit (60 requests per hour), so I'm caching the star counts locally. I want to eventually modify this so that each user isn't hitting the GitHub API on their own, but rather pulling from one serverside source that can be updated more frequently..
Is this still being decided on? I'd like to help out if I can.
I really love the idea of having a single repository locally which I can use to manage all the available plugins for Sketch.
I thought I'd contribute some of my ideas in a visual form here on Github with you guys. Created in Sketch, of course :)
Basically what I'd like to propose are a few key features: