Package: django-prosoul
Prosoulis a software quality models manager to create,
import/export, view and edit models.DescriptionThe goal of this project is to create a web editor and viewer forsoftware quality
modelsthat
are used to show metrics in a meaning way. Also, importers and exporters
for the different quality models used in the industry will be
implemented so they can be used as models or evolved for the creation of
new quality models.In the initial version the metrics supported will be theCROSSMINER
ones.Based on the models, visualizations and assessment for the projects are
generated. In the inital version Kibana dashoards will be created usingGrimoireLab.The final goal is to have a tool for “Automatic Project Assessment and
Visualization based on Evolved Quality Models”.The original name for this project was Meditor but is was chaged to
Prosoul because meditor already was used in pip.Source code and contributionsAll the source code is available in theProsoul GitHub
repository. Please, upload pull
requests if you have proposals to change the source code, and open an
issue if you want to report a bug, ask for a new feature, or just
comment something.Thecode of conductmust be followed in all
contributions to the project.ExecutionProsoulis a Django application. The recommended way to execute it
is inside a python virtual environment.Change VENV_DIR with the path to the folder in which you want to store
the virtual environment.From source code repositoryThis is the recommend way if you want to contribute to the development
of ProSoul.git clone https://github.com/Bitergia/prosoul.git
cd prosoul/django-prosoul
prosoul/django-prosoul $ mkdir -p VENV_DIR
prosoul/django-prosoul $ python3 -m venv VENV_DIR
prosoul/django-prosoul $ source VENV_DIR/bin/activate
prosoul/django-prosoul $ pip3 install -r requirements.txtAnd to start the Django application:prosoul/django-prosoul $ python3 manage.py makemigrations
prosoul/django-prosoul $ python3 manage.py migrate
prosoul/django-prosoul $ python3 manage.py runserverBy default the applicacion will be accesible in:http://127.0.0.1:8000/From pip packageThere is also a pip package with the Django application. You can just
deploy it in a Django site:mkdir -p VENV_DIR
python3 -m venv VENV_DIR
source VENV_DIR/bin/activate
pip install django
pip install django-prosouland you need to add the application following the normal steps in
Django:django-admin startproject mysite
cd mysite
vi mysite/settings.py
...
INSTALLED_APPS = [
    'django.contrib.admin',
    ...
    'prosoul'
    ]

mysite (venv) $ vi mysite/urls.py
...
from django.conf.urls import include, url
...
urlpatterns = [
    path('admin/', admin.site.urls),
    path('prosoul/', include('prosoul.urls')),
]
mysite (venv) $ python manage.py migrate
mysite (venv) $ python manage.py runserverUsing a docker imageA docker image is also available to execute the application:prosoul/docker $ docker-compose upBasic UsageThere is two introductory videos: showing the import and view feature,
and howto use the editor for adding a new quality model:Import and view of quality models:prosoul-intro.webmAdding a new quality model:prosoul-editor.webmCreating a viz and an assessment based on a quality model:prosoul-viz-assess.webmImport / ExportImport and export for quality models can be done using the web interface
or from the command line:Import a model from a OSSMeter JSON file:prosoul/django-prosoul $ PYTHONPATH=. prosoul/prosoul_import.py -f prosoul/data/ossmeter_qm.json --format ossmeterExport a model to a GrimoireLab JSON file:prosoul/django-prosoul $ PYTHONPATH=. prosoul/prosoul_export.py -f prosoul/data/ossmeter_qm_grimoirelab.json --format grimoirelab -m "Default OSSMETER quality model"RequirementsPython >=3.4setuptoolsdjangokidashrequestspython3-tkmatplotlibArchitectureA draft diagram for the architecture is:Prosoul with CROSSMINERThere is a specific guide forusing prosoul with
CROSSMINERfor creating the visualization
for a quality model and generating the assessment of the projects with
CROSSMINER.There is ademo online of prosoul for
CROSSMINER.Prosoul with GrimoireLabThere is a specific guide forusing prosoul with
GrimoireLabfor creating the
visualization for a quality model and generating the assessment of the
projects with GrimoireLab.ROADMAPThe ROADMAP for Prosoul is based onGitHub
milestones. The
current active work is done in the issues related to the current
milestone.LicenseLicensed under GNU General Public License (GPL), version 3 or later.