15
Hubstore β Apps distribution and friend-to-friend promotion
Link to Hubstore
: https://github.com/pyrustic/hubstore
Hi devs !
I am excited to showcase Hubstore
.
Hubstore is available on PyPI and is not intended to be an alternative to PyPI. I think Hubstore
lends itself well to situations where, for example, you want to be able to name your project whatever you want without worrying about name collisions: for example a programming course where the name of the project is the same for each student who must build it and publish it on the same platform.
Hubstore
not only allows you to install applications, but also to run them from the same interface in order to be able to intercept crashes and offer to report them (Github Issues).
I wanted Hubstore
to offer a default list of apps that can be updated with new app recommendations. But instead, I implemented the Promoted feature which allows each developer to promote other apps. So as a user, when you download an application X from developer Y whom you trust, this developer Y can present to you other apps A, B, C and D which come either from him or from other developers in who he trusts. Let's not be naive, the goal is not to create a perfect chain of trust ! I'm just curious to know how it will turn out.
Regarding the promotion algorithm, for the moment it is almost non-existent: Hubstore
just displays a list of all the promoted applications (avoiding duplicates). For the next release, I am thinking of an algorithm which: - introduces randomness; - limits to 3 or 4 the number of apps in the Promotion list (user can always click on the More button to refresh the window); - ensures that more an app is recommended by different developers, as well as a chance to be in the promotion list often (until the user decides to install it).
The choice to put a Promoted button on which the user can click may seem naive. Implementing intrusive pop-ups can be recommended as a more pragmatic method. This choice to trust the altruistic curiosity of users was influenced by an observation (I have 0 statistics to show) I made here on Hackernews: there are always users who click on Newest (https://news.ycombinator.com/shownew) to bring up posts that might deserve attention, though these users are not affiliated with these posts.
I want Hubstore
to make it easy to distribute and promote Python apps (built with Pyrustic Framework or not). This is still a beta version for early-adopters.
Under the hood:
Hubstore
is built with Pyrustic Framework [1]data storage is done with Shared [2]
autocomplete is done with Suggestion [3]
GUI-compatible multithreading is done with Threadom [4]
Hubstore
consumes Python WheelsHubstore
uses Github's Release Asset feature [5]Apps can be built and released with Backstage [6]
the dark theme is based on Cyberpunk-Theme [7]
all views implement Viewable [8]
Hubstore
uses Kurl [9] to fetch resources from api.github.com
15