Observed since 20 Oct, 17:03 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
A public asset shop plugin for Alliance Auth.
An Alliance Auth plugin that lets auth members run a public shop stocked automatically from their own EVE assets.

A public storefront, stocked from your assets. Publish a shop and anyone gets a clean, searchable storefront — no login required to browse. Stock and prices fill in automatically from your allianceauth-corptools assets, so the shop stays current with no manual upkeep. Unpublished shops stay private to you as a preview until you're ready to share the link.
Sell what you actually have:
Pricing on your terms. A fixed price, "Ask" (negotiate / contract in-game), or a live percentage of Jita that refreshes on a schedule.
Real orders, not just a catalogue. Shoppers build a cart and send a request — logging in with their EVE character only at checkout. You get an Alliance Auth notification (and an optional Discord ping), then work the order from a back-office queue with a status workflow and click-to-copy buyer contact.
Personal and corporation shops. Run a shop from your own characters, or a corp shop sourced from corp hangar divisions (with the relevant corptools access).
Curate the shopfront. Feature items to pin them up top, hide what you don't want shown, and give each shop a Markdown description.
Every listing gets a detail page — and a fitted ship's page reconstructs the whole fit from your assets, lists everything that transfers with it, and exports EFT in one click:

Featured items lead each section — from titans to officer modules:


And the back-office, where you manage each section's listings and work incoming orders:


Install into your Alliance Auth virtual environment:
pip install aa-shop
Add "shop" to INSTALLED_APPS in your auth project's local.py:
INSTALLED_APPS += ["shop"]
Let the storefront serve its public pages — required, or anonymous visitors are redirected to login:
APPS_WITH_PUBLIC_VIEWS = ["storefront"]
Run migrations and collect static files, then restart your AA services:
python manage.py migrate
python manage.py collectstatic
EVE universe data: the ship and blueprint pickers read from django-eveuniverse, so make sure its data is populated (load the full EVE universe, or at least the Ship category, with eveuniverse's load tooling). Types that aren't loaded won't be selectable.
Grant the shop.basic_access permission (Django admin, or via groups/states) to
members who should be able to run shops.
Selling blueprint copies additionally needs a read_blueprints ESI token: the
character's esi-characters.read_blueprints.v1 for personal shops, or a director's
esi-corporations.read_blueprints.v1 for corporation shops. Registering the character
with corptools already covers the character scope.
Add these to your local.py so stock and prices stay current:
from celery.schedules import crontab
# Recompute stock for every shop, hourly (ships, modules, blueprint copies).
CELERYBEAT_SCHEDULE["shop_refresh_all_stock"] = {
"task": "shop.tasks.refresh_all_stock",
"schedule": crontab(minute=0),
}
# Re-price anything set to a percentage of Jita, every 6 hours.
CELERYBEAT_SCHEDULE["shop_refresh_pct_prices"] = {
"task": "shop.tasks.refresh_pct_prices",
"schedule": crontab(minute=0, hour="*/6"),
}
Stock is read from your corptools assets; the hourly task also nudges corptools to pull
fresh assets first, so you don't need to tune its update rings. ESI caches assets and
blueprints for about an hour, so hourly is as often as is useful. Optional settings:
SHOP_REFRESH_CORPTOOLS_ASSETS = False skips the asset nudge, and SHOP_TASKS_PRIORITY
(1 = urgent … 9 = idle, default 7) sets the priority of these background tasks.
Members with access get a Shop entry in the auth sidebar. From there you can create a personal or corporation shop, name it and give it a short link, choose what it sells (ships, modules, blueprint copies, fitted ships), and publish it. While a shop is unpublished only you can see it, as a preview; once published, share its link with anyone.
Stock and prices fill in automatically from your assets on the schedule above — you just set your pricing rules and pick which items to feature or hide.
Feedback is very welcome — if you're running aa-shop, I'd love to hear how it's going.
MIT
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.5.0 | 18 Jul 2026 | 7 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitLab
| Contributor | Contributions |
|---|---|
| Daniel Onisoru | 202 |
Default-branch author identities; GitLab commit counts exclude merge commits.
Public sponsor counts have not been collected. These signals belong to the repository owner.
gitlab · 4 observations shown. Missing days are unknown.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-23 | 1 | 2026-10-23T17:16:26.3358038Z |
| 2026-10-22 | 1 | 2026-10-22T17:14:47.2044264Z |
| 2026-10-21 | 1 | 2026-10-21T17:13:46.9430218Z |
| 2026-10-20 | 1 | 2026-10-20T17:13:28.5556182Z |
Observed since 20 Oct, 17:03 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:d1e3465bcdacc7212df06b196e2ddfe6a0bfe1f1563e586d695094893b9d59c8