Skip to main content

Skillfarm module for AllianceAuth.

Release Licence Python Django React pre-commit.ci status Code style: black Tests codecov Translation status

ko-fi

The Skillfarm Tracker Module for Alliance Auth tracks skill queues, sends notifications if skills finished and highlights them, making skill management easier for Skillfarms.


Features

  • Graphical Design
  • Characters Overview
  • Skillfarm Information Sheet
    • Filtered Skillqueue
    • Filtered Skills
    • Highlight finished Skills
    • No Active Training hint
  • Filter Skills for each Character
  • Notification System
  • Enable/Disable Characters

Highlights

Image: dashbaord Image: skillqueue Image: skillsetup Image: calculator

Installation

Step 1 - Install the Package

Make sure you're in your virtual environment (venv) of your Alliance Auth then install the pakage.

pip install aa-skillfarm

Step 2 - Configure Alliance Auth

Configure your Alliance Auth settings (local.py) as follows:

INSTALLED_APPS = [
    # other apps
    "eve_sde",  # only if it not already existing
    "skillfarm",
    # other apps?
]

# This line is right below the `INSTALLED_APPS` list, if not already exist!
INSTALLED_APPS = ["modeltranslation"] + INSTALLED_APPS

Step 3 - Add the Scheduled Tasks

To set up the Scheduled Tasks add following code to your local.py

if "skillfarm" in INSTALLED_APPS:
    CELERYBEAT_SCHEDULE["AA Skillfarm :: Update All Skillfarm"] = {
        "task": "skillfarm.tasks.update_all_skillfarm",
        "schedule": 1800,
    }

    CELERYBEAT_SCHEDULE["AA Skillfarm :: Check Skillfarm Notification"] = {
        "task": "skillfarm.tasks.check_skillfarm_notifications",
        "schedule": crontab(minute=0, hour="*/24"),
    }

    CELERYBEAT_SCHEDULE["AA Skillfarm :: Update All Prices"] = {
        "task": "skillfarm.tasks.update_all_prices",
        "schedule": crontab(minute=0, hour="0"),
    }

This also only need to be added if it is not already!

if "eve_sde" in INSTALLED_APPS:
    # Run at 12:00 UTC each day
    CELERYBEAT_SCHEDULE["EVE SDE :: Check for SDE Updates"] = {
        "task": "eve_sde.tasks.check_for_sde_updates",
        "schedule": crontab(minute="0", hour="12"),
    }

Step 3.1 - (Optional) Add own Logger File

To set up the Logger add following code to your local.py Ensure that you have writing permission in logs folder.

LOGGING["handlers"]["skillfarm_file"] = {
    "level": "INFO",
    "class": "logging.handlers.RotatingFileHandler",
    "filename": os.path.join(BASE_DIR, "log/skillfarm.log"),
    "formatter": "verbose",
    "maxBytes": 1024 * 1024 * 5,
    "backupCount": 5,
}
LOGGING["loggers"]["extensions.skillfarm"] = {
    "handlers": ["skillfarm_file"],
    "level": "DEBUG",
}

Step 4 - Migrate & Preload EVE SDE Data

AA Skillfarm uses EVE SDE data to map IDs to names for EveTypes. You will need to preload some data from SDE once.

python manage.py migrate eve_sde
python manage.py esde_load_sde

Step 4.1 - Migrate App and collect static

Migrate the app and collect static.

python manage.py migrate skillfarm
python manage.py skillfarm_load_prices
python manage.py collectstatic --noinput

Step 5 - Setting up Permissions

With the Following IDs you can set up the permissions for the Skillfarm

ID Description
basic_access Can access the Skillfarm module All Members with the Permission can access the Skillfarm.
corp_access Has access to all characters in the corporation. Can see all Skillfarm Characters from own Corporation.
admin_access Has access to all characters Can see all Skillfarm Characters.

Step 6 - (Optional) Setting up Compatibilies

The Following Settings can be setting up in the local.py

Setting Name Descriptioon Default
SKILLFARM_APP_NAME Set the name of the APP "Skillfarm"
SKILLFARM_PRICE_SOURCE_ID Set Station ID for fetching base prices. Default is Jita 60003760

Advanced Settings: Stale Status for Each Section

  • SKILLFARM_STALE_TYPES = { "skills": 30, "skillqueue": 30, } - Defines the stale status duration (in minutes) for each section.

Translations

Translations

Help us translate this app into your language or improve existing translations. Join our team!"

Contributing

You want to improve the project? Please ensure you read the contribution guidelines

Metadata

Release files for aa-skillfarm 4.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aa-skillfarm 4.0.1
File Size Uploaded
aa_skillfarm-4.0.1.tar.gz 1.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for aa-skillfarm 4.0.1
File Interpreter ABI Platform
aa_skillfarm-4.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 2.2 MB

Release files / aa_skillfarm-4.0.1.tar.gz

Download URL aa_skillfarm-4.0.1.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
7df912199b8d42807c05cf483fe7afd51ed11b73c2e18ef9cd6090ee3845109b
BLAKE2b-256 checksum
How to use checksums
3a88db0b2bed65d112ab2fc6eb9d6cfbb59d277c10ff5bef11f2eeb0ed35bdca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / aa_skillfarm-4.0.1-py3-none-any.whl

Download URL aa_skillfarm-4.0.1-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
74a77f8b994191324466e2fd1e0a583bf4e9193837f4604d25402369db326ef7
BLAKE2b-256 checksum
How to use checksums
a2dbab3d26b8339da3334c749590db7d5f504af1d2863e61d3af073b38638583
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

4.0.1 This release

2 release files

4.0.0

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.0.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page