mirror of
https://github.com/YunoHost/appstore
synced 2026-03-25 06:12:42 +01:00
No description
| .github/workflows | ||
| assets | ||
| src/appstore | ||
| templates | ||
| tools | ||
| translations | ||
| .gitignore | ||
| babel.cfg | ||
| config.toml.example | ||
| gunicorn.py | ||
| LICENSE | ||
| pyproject.toml | ||
| README.md | ||
YunoHost app store
This is a Flask app interfacing with YunoHost's app catalog for a cool browsing of YunoHost's apps catalog, wishlist and being able to vote/star for apps.
It is supposed to be installed with its YunoHost app.
Developement
# Install project and its dependencies
python3 -m venv .venv
.venv/bin/pip install -e .
# Manually download the web assets
./tools/fetch_assets
./tools/fetch_badges
# Create and tweak the configuration file with appropriate values...
# (not everyting is needed for the base features to work)
cp config.toml.example config.toml
nano config.toml
# You'll need to have a built version of the catalog
mkdir -p data/{cache,stars}
curl https://apps.yunohost.org/default/v3/apps.json > data/apps.json
# You will also want to run list_builder.py to initialize the .apps_cache
# (at least for a few apps, you can Ctrl+C after a while)
pushd ..
./apps_tools/list_builder.py
popd
And then start the dev server:
FLASK_ENV=development .venv/bin/flask --debug --app "appstore.app" run
# In another term, launch the tailwindcss process to autorebuild css:
cd assets; ./tailwindcss-linux-x64 --input tailwind-local.css --output tailwind.css --watch
Translation
It's based on Flask-Babel : https://python-babel.github.io/flask-babel/
source .venv/bin/activate
# Extract the english sentences from the code, needed if you modified it
pybabel extract -F babel.cfg -o translations/messages.pot *.py templates/*.html
# If working on a new locale: initialize it (in this example: fr)
pybabel init -i translations/messages.pot -d translations -l fr
# Otherwise, update the existing .po:
pybabel update -i translations/messages.pot -d translations
# ... translate stuff in translations/<lang>/LC_MESSAGES/messages.po
# re-run the 'update' command to let Babel properly format the text
# then compile:
pybabel compile -d translations