To Connect Apps With Users
Project description
Hubstore is built with the TkF Framework. But since Gaspium Framework outperforms TkF, Hubstore should be refactored to work with Gaspium
Work in progress... (new version in April)
Overview of the Pyrustic Open Ecosystem
Hubstore
Distribute, promote, discover, install, and run Python desktop applications
This project is part of the Pyrustic Open Ecosystem.
Installation | User side | Developer side | Demo
Overview
Hubstore
allows software developers to distribute their apps to users through Github.
Let's visit both sides of the distribution pipeline.
User side
Let's discover Hubstore through a series of screenshots
A minimalist, clean and elegant graphical user interface
Type developer/app-name in the search bar to install an app
You can rollback to the previously installed version of an app
Hubstore uses Suggestion to implement the autocomplete feature
Install apps, run apps, and close apps from the same interface
Discover new apps through the Promoted feature
Built-in bug reporting system to allow users to help improve the apps
Developer side
Once you have developed a Python desktop application with or without Pyrustic Framework, the next goal is to distribute it to end users.
Suppose you already have a Github profile and have already created a repository named as your project name.
To allow users to access your apps through Hubstore, you need to publish your app's distribution package (Wheel) on Github. Concretely, it is a question of doing this:
- test your project;
- create the distribution package (Wheel) of your application (the project must have a
__main__.py
entry point); - create a
Release
on Github; - upload the
Wheel
file of your application as aRelease asset
.
You can use the Backstage project management tool's build
and release
commands, respectively, to automate these steps. Backstage
also manages the versioning of your project.
Then, the user just has to copy and paste the URL of your project's repository into Hubstore
.
Hubstore
assigns a default nice image to your app. You can modify the image by editing the configuration file $APP_DIR/pyrustic_data/hubstore/img.json
. The image must have the following characteristics: 200x80 .PNG
To promote
other apps of which you are the author or friend of the authors, modify the configuration file $APP_DIR/pyrustic_data/hubstore/promotion.json
as follows:
{
"developer/app-name": "A short description",
"developer/another-app-name": "A short description"
}
Hubstore
is built with Pyrustic framework
and is available on PyPI. As Hubstore
uses the standard Python Wheel
package format, it is compatible with many existing projects.
Demo
Install Hubstore
in a new Python virtual environment. Open Hubstore
, accept the default configuration to store data in $HOME, then just type in the search bar pyrustic/demo
or copy-paste https://github.com/pyrustic/demo
. You will be asked if you want to install the demo app. Once installed, you can run the app. You can also deliberately crash the demo app: just click the crash
button. Hubstore
will intercept the crash and it will offer you to report it.
If you are an old user of Hubstore, please delete/move $HOME/hubstore-apps
and $HOME/PyrusticData
before you open the new version of Hubstore
. Yes this new version isn't compatible with the previous one.
Enjoy the demo !
Installation
If you have never installed a package from PyPI, you must install the pip tool enabling you to download and install a PyPI package. There are several methods which are described on this page.
Install for the first time
$ pip install hubstore
I recommend even for the first time to use the next command (upgrade). Hubstore
needs the latest version of its dependencies.
Upgrade
$ pip install hubstore --upgrade --upgrade-strategy eager
Note: this project is for early-adopters ! Work in progress...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file hubstore-0.1.4.tar.gz
.
File metadata
- Download URL: hubstore-0.1.4.tar.gz
- Upload date:
- Size: 38.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.9.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3bbc9a59df6ab83a18b2dc284ae938db4b7e9e3c885b49480b40c06ea6ea8ec |
|
MD5 | 17aa44e7281b304cf2b107111513cb22 |
|
BLAKE2b-256 | eddf86a0c50df556744add39a20c358965f4f6beedebd035709964909d306ee6 |
File details
Details for the file hubstore-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: hubstore-0.1.4-py3-none-any.whl
- Upload date:
- Size: 89.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.9.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b85648b6a057666e6f106ed69cf61b387488b30d9af95ff174004e9f87a86557 |
|
MD5 | 44f2393d5ccf0af344c599cc336f466b |
|
BLAKE2b-256 | fb0b8ea8024cfeca1efdde385c2df6bb1bfe26245dfd21c2d0061e2769319922 |