EVEShip.fit's Dogma Engine for Python
This library calculates accurately statistics of an EVE Online ship fit.
The input are several data-files provided by EVE Online, together with a ship fit. The output are all the Dogma attributes of the ship, its items and the character.
The engine is written in Rust; this package wraps it, so every lookup happens inside Rust.
Install
The sde extra brings in eveshipfit-sde, which ships sde.dat.
pip install eveshipfit-dogma-engine[sde]
Usage
import esf_dogma_engine as dogma
from eveshipfit_sde import sde_path
build_number = dogma.load_sde_from_file(sde_path())
fit = {
"ship": {"type_id": 587},
"items": [
{
"type_id": 2873,
"slot": {"type": "high", "index": 0},
"state": "active",
"charge": {"type_id": 185},
}
],
"character": {"skills": {3300: 5}},
}
calculation = dogma.calculate(fit)
# Or if you want to know the source of the effects:
with_sources = dogma.calculate(fit, {"sources": True})
# Or if you have a beacon in space (like wormhole effects):
with_beacon = dogma.calculate({**fit, "incoming": dogma.beacon(beacon_type_id)})
# Or if you have an EFT, the text format EVE copies a fit to the clipboard in:
imported = dogma.calculate(dogma.load_eft("[Rifter, My Rifter]\n200mm AutoCannon I"))
# And to write a fit back out as EFT:
eft = dogma.save_eft(fit)
# Or if you have a fitting a character saved in game, as ESI returns it (and the other way around):
from_esi = dogma.load_esi_fitting(fitting)
to_esi = dogma.save_esi_fitting(fit)
# Or if you have a killmail, as ESI returns it, for the fit of the ship that died:
from_killmail = dogma.load_killmail(killmail)
# Or if you have an EVEShip.fit link, `<version>:<payload>`, with the payload gunzipped and unbase64'd:
from_link = dogma.load_link(version, payload)
# Or if you have an esf/1 document, as text or as a link (and the other way around):
from_esf = dogma.load_esf("%esf/1\nRifter\n200mm AutoCannon I\n")
from_esf_link = dogma.load_esf_link(link)
esf = dogma.save_esf(fit)
link = dogma.save_esf_link(fit)
# What EVE would not let you fly, in `violations` of the calculation:
validated = dogma.calculate(fit, {"validate": True})
load_sde_from_file may only be called once per process.
An EFT import matches the English names in sde.dat.
To also match the other languages EVE supports, load names.dat as well:
from eveshipfit_sde import names_path
dogma.load_names_from_file(names_path())
Fits and calculations are plain dicts, typed with TypedDict in esf_dogma_engine.types.
What every field means is explained under Input and output.
Every function but load_sde and load_names releases the GIL while it works, so a thread pool calculates fits in parallel.
More
How the engine works, the attributes EVEShip.fit adds and the fitting rules it validates are all in the main repository.
Metadata
Release files for eveshipfit-dogma-engine 13.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| eveshipfit_dogma_engine-13.2.0.tar.gz | 125.8 kB | With provenance | Details for eveshipfit_dogma_engine-13.2.0.tar.gz |
Built distributions (wheels)
Total release size: 3.4 MB
Release files / eveshipfit_dogma_engine-13.2.0.tar.gz
| Download URL | eveshipfit_dogma_engine-13.2.0.tar.gz |
|---|---|
| Size | 125.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
97738988aa0e6f9f47fcbb217021c6005476d0eebd5c6375137e122b9448660e
|
|
BLAKE2b-256 checksum How to use checksums |
ea93e8f9364990e35b4e1e7e5be8c09a0889e77444fae85a0995fc554165b9b6
|
| 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 4, 2026.
Transparency logRelease files / eveshipfit_dogma_engine-13.2.0-cp310-abi3-win_amd64.whl
| Download URL | eveshipfit_dogma_engine-13.2.0-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 544.5 kB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
57e45abbf2c2c5eb78a2e1605353658078c4e582c861864616088135d72d7eb4
|
|
BLAKE2b-256 checksum How to use checksums |
0d9ee9829cd49a326f9e9a0c1028e363dc0392abf9177b2c80aba967e0347b92
|
| 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 4, 2026.
Transparency logRelease files / eveshipfit_dogma_engine-13.2.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | eveshipfit_dogma_engine-13.2.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 723.4 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
fc63b6517c23205fbab734a7d84dce4986baac91d1560bf2c75c74b020610b0d
|
|
BLAKE2b-256 checksum How to use checksums |
f4090fe94b24881c7652e39f9f13b4df2dca2cf64ce03fbe97e70a8f2f9d2c57
|
| 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 4, 2026.
Transparency logRelease files / eveshipfit_dogma_engine-13.2.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | eveshipfit_dogma_engine-13.2.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 698.6 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
0c19e59a6150b99a5015a5e24f5e6e610d9cb96c05f2f26fc73b651511834080
|
|
BLAKE2b-256 checksum How to use checksums |
a7db60763e9f6be94dcd385ad303c7ea5859c020f03f704e82171969d8790ec2
|
| 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 4, 2026.
Transparency logRelease files / eveshipfit_dogma_engine-13.2.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
| Download URL | eveshipfit_dogma_engine-13.2.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4d2a89e586be3254c71ebe6080e653f48d0ce00d72d51ba702dd39e7b1eef400
|
|
BLAKE2b-256 checksum How to use checksums |
1aff4f451d40d2fa59516d811642077011f9751e988c1bfc5752f18da904bb66
|
| 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 4, 2026.
Transparency logSecurity for eveshipfit-dogma-engine 13.2.0
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.
Full provenance
All 5 files in this release have been uploaded with provenance metadata.
Attestation for eveshipfit_dogma_engine-13.2.0.tar.gz
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 4, 2026.
Transparency logA 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.