semvec/pypi-packages huggingface dataset:
djangelo 0.1.4
Tracking and rating Django Model activities with ELO system
License: APACHE 2.0
Keywords: django elo rating tracking plugin

# Djangelo
Django Plugin for tracking and rating actions with ELO system.

## Implementation Example
1. You have a blog.
1. Your blog have posts.
1. Each post have comments, likes and other user reactions.
1. **You want to evaluate which posts have lower or beyond user reactions in a quantitative way**

*This is your solution!*

__Main Features__:
- Track activity of your Django Models
- Compare the activity of each Object with the activity of all objects tracked
- Determine an ELO rating from this comparation

__Cool Features__:
- Easy to implement
- Ready to use
---

## Documentation

[Online](https://djangelo.rtfd.io)

[PDF download](https://djangelo.rtfd.io/_/downloads/en/latest/pdf/)

## Getting Started

### Dependencies
- python >= 3.5
- Django >= 3


### Installation
~~~sh
pip install djangelo
~~~

_And then, three simple steps_

__FIRST__: Add djangelo into your INSTALLED_APPS and define which models you want to track
~~~python
INSTALLED_APPS = [
# ...
'django.contrib.contenttypes',
'djangelo'
]

DJANGELO = {
    'RATED_MODELS': [
        'myapp1.mymodel1',
        'myapp1.mymodel2',

        'myapp2.mymodel1',
    ]
}
~~~
__SECOND__: Get elo values from your Model
~~~python
# Adding the ELORated on your models, those will be tracked

from django.db import models
from djangelo.utils import EloDescriptor

class MyModel(models.Model):
    elo = EloDescriptor()
    # ... here your code

# You can also get and compare elo rated objects
    instance1.elo.value
    >> 3.5

    instance1.elo >= instance2.elo
    >> True
~~~
__FINALLY__: Define when your objects increments his rating.
~~~python
# To increse the elo rating just call elo.up() method
    myModelInstance.elo.up()
    myModelInstance.elo.down()
~~~

### Customization
~~~python
DJANGELO = {
    # Increse the sensibility for more sensitive rating.
    # This make more impact for each tracked activity
    # by default is 32
    'SENSIBILITY': 64,

    # You can define a default ELO value for the new objects created
    # by default is 1200
    'INITIAL_VALUE': 4000

    'RATED_MODELS': [...]
}
~~~

---

### Contributing
Contributors are wellcome! Any new feature will be well recibed as merge request or issue.

### Licence
Licensed over APACHE 2.0. See [LICENSE](LICENSE)

### Manteiner
This software is developed and mantained by [Agustin Jimenez](https://agustinjimenez.gitlab.io/portfolio).