Package: cilantropy
CilantropyCilantropyis a Python Package Manager interface created to provide an "easy-to-use" visual and also
a command-line interface for Pythonistas. Today we have many nice distribution utilities like pip,
distribute, etc, but we don't have a nice visual approach to inspect current installed packages,
show projects metadata, check for PyPI updates, etc.DemoDemo CilantropyScreenshotsScreenshot: The homeScreenshot: Installed package informationScreenshot: Check PyPI for updates available'plp' (Python List Packages) console utilityHow to InstallInstalling using pip:$ pip install cilantropyUpgrading using pip:$ pip install --upgrade cilantropyDockerRepository @DockerHubDocker Compose excerpt# Docker Compose excerptservices:nginx-ui:image:fz11/cilantropy:latestports:-8080:8080volumes:-nginx:/etc/nginxuWSGIuwsgi--http0.0.0.0:5000--wsgi-filewsgi.py--callableapp--processes1--threads8Installing as a systemd serviceIf you're running Linux withsystemd(before edit path and other configs incontrib/systemd/cilantropy.service)
installed, you can register Cilantropy as a service by copyingcilantropy.service(both incontrib/systemd) to/etc/systemd/system.All standard systemd service management commands (e.g.systemctl enableandsystemctl start) apply.uWSGI + NginxManualService management$sudostartcilantropy
$sudostopcilantropy
$sudostatuscilantropyor$sudoservicecilantropystart
$sudoservicecilantropystop
$sudoservicecilantropystatusAndroid (Termux)You can use Cilantropy on your android device with Termux:$pkgupgrade
$pkginstallpython
$pipinstallcilantropyAuthenticationBasicAuth with nginxIn general, this app does not come with authentication. However, it is easy to setup basic auth to restrict unwanted access.
Here is how this can be done when using nginx.Configure the auth fileVerify thatapache2-utils(Debian, Ubuntu) orhttpd-tools(RHEL/CentOS/Oracle Linux) is installedRun the htpasswd utility to create a new user and set a passwort.Make sure, that the directory existsRemove the-cflag, if you have created a user before, since it creates the inital user/passwort filesudo htpasswd -c /etc/apache2/.htpasswd user1Using CilantropyYou only need to call the script (the -w option will automatically open your browser):$ cilantropy -wUsing plp$ plp --help
Cilantropy - Python List Packages (PLP)

Usage:
  plp list [--compact] [<filter>]
  plp show <project_name>
  plp check <project_name>
  plp scripts [<filter>]
  plp paste [list your packages to pastebin service]

  plp (-h | --help)
  plp --version

Options:
  --compact     Compact list format
  -h --help     Show this screen.
  --version     Show version.Setting a development environmentDevelopers can setup a development environment using the "develop" command
from setuptools:$ git clone git@github.com:foozzi/cilantropy.git && cd cilantropy
$ pip install flit --user
$ flit install
$ cilantropyRequirementsCilantropy uses the following external projects:FlaskA microframework based on Werkzeug, Jinja2 and good intentionsBootstrap 4HTML, CSS, and JS toolkit from BootstrapJinja2(Flask requirement)The Jinja2 template engineWerkzeug(Flask requirement)A flexible WSGI implementation and toolkitdocopt(used by plp)Command-line interface description languagecolorama(used by plp)Cross-platform colored terminal text.docutilsDocutils is an open-source text processing system for processing plaintext documentation
into useful formats, such as HTML or LaTeX.flit(for build and install package)Flit is a simple way to put Python packages and modules on PyPI.CompatibilityCilantropy is compatible with:Python 3Supported browsersCilantropy is compatible with:FirefoxGoogle ChromeInternet Explorer 9/10SafariReporting bugOpen an issue in Github with the traceback. To get the traceback, you'll
have to run Cilantropy in debugging mode:$ cilantropy -drviLicenseCopyright (c) 2020, Tkachenko Igor All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1) Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3) All advertising materials mentioning features or use of this software must display the following acknowledgement:

"This product includes software developed by the University of California, Berkeley and its contributors."

4) Neither the name of the foozzi nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.ContributorsSee theContributors.LinksProject Site - Github