Skip to main content

AA Hangar Ready

Version License Python Django

Track member ship assets across your organization. Search for specific ship types and classes in specific hangar locations via ESI.

Key Features

  • 🚀 Ship Search - Find who has specific ships or ship classes across all members
  • 📊 Ship Reports - Generate custom reports by ship type, class, or location
  • 💾 Saved Reports - Save frequently-used reports for quick access
  • 🔄 Auto-Updates - Periodic automatic asset updates via Celery
  • 👥 Admin Tools - Bulk-add characters, view all tracked characters, fetch structure names
  • 🎨 Modern UI - Clean, responsive Bootstrap 5 interface with dark mode support

Requirements

  • Alliance Auth 4.0.0+
  • Python 3.8+

Installation

1. Install Package

pip install aa-hangar-ready

2. Add to Settings

Add to INSTALLED_APPS in your Alliance Auth local.py:

INSTALLED_APPS += [
    'hangarready',
]

3. Run Migrations

python manage.py migrate hangarready
python manage.py collectstatic --noinput

4. Restart Services

supervisorctl restart myauth:

5. Setup Permissions

Grant permissions in Alliance Auth admin:

Permission Purpose
hangarready.basic_access Access the plugin (grant to all members)
hangarready.view_all_characters Admin features - view/manage all characters

6. (Optional) Configure Auto-Updates

Add to local.py for automatic asset updates:

from celery.schedules import crontab

CELERYBEAT_SCHEDULE['hangarready_update_stale_assets'] = {
    'task': 'hangarready.tasks.update_stale_character_assets',
    'schedule': crontab(hour='*/6'),  # Every 6 hours
}

Usage

For Members

  1. Navigate to Hangar Ready in the sidebar
  2. Click Manage Characters
  3. Add your characters (requires ESI scope: esi-assets.read_assets.v1)
  4. Assets will be fetched and updated automatically

Search for Ships:

  • Use the dashboard search form to find ships by type and hangar location
  • Or use Ship Report to generate detailed reports by ship class

Save Reports:

  • Create custom reports and save them for quick re-running

For Admins

Bulk Add Characters:

  • Click Bulk Add Characters on the Manage Characters page
  • Automatically adds all characters that have already granted required ESI scopes

View All Characters:

  • Dashboard shows an admin-only section with all tracked characters across all accounts
  • See character ownership, status, and last update times

Fetch Structure Names:

  • Click Fetch Structures to resolve structure IDs to names via ESI
  • Individual structure name refresh buttons available in search results

Configuration

Optional settings in local.py:

# Update frequency (hours)
HANGAR_READY_UPDATE_INTERVAL = 6

# Maximum cache age before marked stale (hours)
HANGAR_READY_MAX_CACHE_AGE = 24

ESI Scopes Required

  • esi-assets.read_assets.v1 - Read character assets
  • esi-universe.read_structures.v1 - Resolve structure names (optional, for better UX)

Supported Hangar Locations

  • Main Hangar
  • Ship Maintenance Bay
  • Fleet Hangar
  • Corp Hangars 1-7

Troubleshooting

Assets not updating?

  • Check Celery is running: supervisorctl status
  • Verify ESI token is valid (re-add character if needed)
  • Check Celery logs: tail -f /var/log/myauth/celery.log

Permission denied?

  • Ensure user has hangarready.basic_access permission

Missing ship types?

python manage.py eveuniverse_load_types --type_id <TYPE_ID>

Support

License

MIT License - see LICENSE file


Built for Alliance Auth | Uses django-esi & django-eveuniverse

Metadata

Release files for aa-hangar-ready 0.3.3

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-hangar-ready 0.3.3
File Size Uploaded Provenance Actions
aa_hangar_ready-0.3.3.tar.gz 37.8 kB Without provenance Details for aa_hangar_ready-0.3.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aa-hangar-ready 0.3.3
File Interpreter ABI Platform Actions
aa_hangar_ready-0.3.3-py3-none-any.whl Python 3 none any Details for aa_hangar_ready-0.3.3-py3-none-any.whl

Total release size: 86.6 kB

Release files / aa_hangar_ready-0.3.3.tar.gz

Download URL aa_hangar_ready-0.3.3.tar.gz
Size 37.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2bf8dbd2e101e12e4b8b89d3f4f8fafb404becab6946cc198772f72afd78e502
BLAKE2b-256 checksum
How to use checksums
2619cf5daf87da58bd02afb92b1a067b10091590d80659606b787053f95330ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / aa_hangar_ready-0.3.3-py3-none-any.whl

Download URL aa_hangar_ready-0.3.3-py3-none-any.whl
Size 48.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ae1debcd867b6055ee359dee218d1815380985950543a44ef43e23220c1b6ae4
BLAKE2b-256 checksum
How to use checksums
1a7a936c829051f767f482ae01ce6fa8b6d7284de6a6f8db3e624ab2cc86cffc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Security for aa-hangar-ready 0.3.3

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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