Skip to main content

Indy Hub Plugin for Alliance Auth

Project description

Indy Hub for Alliance Auth

A modern industry management module for Alliance Auth, focused on blueprint and job tracking for EVE Online alliances and corporations.


✨ Features (Current)

  • Blueprint Library: View, filter, and search all your EVE Online blueprints by character, corporation, type, and efficiency.
  • Industry Job Tracking: Monitor and filter your manufacturing, research, and invention jobs in real time.
  • Blueprint Copy Sharing: Request, offer, and deliver blueprint copies (BPCs) within your alliance, complete with signed Discord quick-action links, auto-launching chats for conditional offers, and notifications for each step.
  • Flexible Sharing Scopes: Expose blueprint libraries per character, per corporation, or to everyone at once, all controlled from the sharing dashboard and allow-list toggles.
  • Conditional Offer Chat: Negotiate blueprint copy terms directly in Indy Hub with persistent history, status indicators, and decision tracking.
  • Corporate Command Center: Track corporation blueprints and jobs, configure sharing scopes, and review director token coverage from a dedicated dashboard.
  • ESI Integration: Secure OAuth2-based sync for blueprints and jobs (Celery required), including director-level corporation scopes and staggered background refreshes.
  • Notifications: In-app alerts for job completions, copy offers, chat messages, and deliveries. Optional Discord notifications (via aa-discordnotify).
  • Modern UI: Responsive Bootstrap 5 interface, theme-compatible, with accessibility and i18n support.

🚧 In Development

  • Alliance-wide Blueprint Library: Browse all blueprints available in the alliance (admin-controlled visibility).
  • Advanced Copy Request Fulfillment: Streamlined workflows for fulfilling and tracking copy requests.
  • Improved Job Analytics: More detailed job statistics, filtering, and export options.
  • Better Admin Tools: Enhanced dashboards and management commands for admins.

🛣️ Planned / Coming Soon

  • Blueprint Lending/Loan System: Track and manage temporary blueprint loans between members.
  • Production Cost Estimation: Integrated cost calculators and market price lookups.
  • More ESI Scopes: Support for additional ESI endpoints (e.g., assets, wallet, reactions).
  • API/Export: Public API endpoints and improved CSV/Excel export for all lists.
  • More Notifications: Customizable notification rules and Discord webhooks.

Requirements

  • Alliance Auth v4+
  • Python 3.10+
  • Django (as required by AA)
  • django-eveuniverse (populated with industry data)
  • Celery (for background sync)
  • (Optional) Director characters with esi-corporations.read_blueprints.v1, esi-industry.read_corporation_jobs.v1, and esi-characters.read_corporation_roles.v1 to unlock corporate dashboards.
  • (Optional) aa-discordnotify for Discord alerts

Quick Install

  1. pip install django-eveuniverse and pip install indy_hub

  2. Add eveuniverse and indy_hub to INSTALLED_APPS in your AA settings.

  3. Add to your local.py:

  • EVEUNIVERSE_LOAD_TYPE_MATERIALS = True
  • EVEUNIVERSE_LOAD_MARKET_GROUPS = True
  1. Run migrations: python manage.py migrate

  2. Collect static files: python manage.py collectstatic

  3. Restart your auth.

  4. Populate EveUniverse with industry data python manage.py eveuniverse_load_data types --types-enabled-sections industry_activities type_materials.

  5. Assign the can access indy_hub permission to pilots, and grant can_manage_corporate_assets to directors who should manage corporation data.


Configuration

These settings are optional and let you tune background behaviour:

  • INDY_HUB_DISCORD_DM_ENABLED (bool, default: True): enable Discord DM notifications via aadiscordbot, falling back to discordnotify when available.
  • INDY_HUB_MANUAL_REFRESH_COOLDOWN_SECONDS (int, default: 3600): minimum delay (in seconds) before the same user can trigger another manual sync for blueprints or jobs.
  • INDY_HUB_BULK_UPDATE_WINDOW_MINUTES (int, default: 720): maximum window (in minutes) used to stagger large background synchronisations. You can further refine the cadence with:
    • INDY_HUB_BLUEPRINTS_BULK_WINDOW_MINUTES (default: 720, twelve hours).
    • INDY_HUB_INDUSTRY_JOBS_BULK_WINDOW_MINUTES (default: 120, two hours).
  • Blueprint copy sharing scopes are configured in the Indy Hub UI. Character settings and corporation dashboards now provide an "Everyone" option alongside character/corporation allow-lists so you can expose libraries broadly without manual maintenance.

Scheduled tasks are automatically created or updated on startup:

  • indy-hub-update-all-blueprints runs daily at 03:00 UTC and spreads user refreshes across the configured window.
  • indy-hub-update-all-industry-jobs runs every two hours and staggers its workload across the job window.

After upgrading, restart your Celery workers and Celery Beat to apply the new schedule.

  • Assign the indy_hub.can_manage_corporate_assets permission to directors who should access the corporation dashboard and manage cross-corporation sharing.
  • The corporation dashboard now exposes per-corporation copy sharing settings backed by CorporationSharingSetting.

Usage

  • Go to the Indy Hub dashboard in Alliance Auth.
  • Authorize ESI for blueprints and jobs.
  • View/manage your blueprints and jobs, request/offer BPCs, and receive notifications.

Support & Contributing

  • Open an issue or pull request on GitHub for help or to contribute.

License

MIT License. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

indy_hub-1.12.2.tar.gz (220.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

indy_hub-1.12.2-py3-none-any.whl (279.8 kB view details)

Uploaded Python 3

File details

Details for the file indy_hub-1.12.2.tar.gz.

File metadata

  • Download URL: indy_hub-1.12.2.tar.gz
  • Upload date:
  • Size: 220.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for indy_hub-1.12.2.tar.gz
Algorithm Hash digest
SHA256 9287947653e8a42ef349c6e53f3a3b9523a07ed195fb131a869b688ac7bfc5a9
MD5 c88511ec58b9b253a554bacfb6558839
BLAKE2b-256 564f729110c5035b80be4a65737fdf9c01363b0737c6001066fc881d54250c10

See more details on using hashes here.

File details

Details for the file indy_hub-1.12.2-py3-none-any.whl.

File metadata

  • Download URL: indy_hub-1.12.2-py3-none-any.whl
  • Upload date:
  • Size: 279.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for indy_hub-1.12.2-py3-none-any.whl
Algorithm Hash digest
SHA256 eec85b1609f74c173a230906bba2b069baa96654908e2510809ec90269856808
MD5 b4aa54b75b428fc79803f9a8e92db3fd
BLAKE2b-256 1337f4811485a44f8918e07f43916f6b4d6de776cb9ab602337883ca56124b40

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page