edjr 0.1.1

Elite Dangerous Journal Reader
Documentation

edjr

crates.io docs.rs

Elite Dangerous Journal Reader

A library for parsing Elite Dangerous's journal files. edjr supports only Elite Dangerous Odyssey.

Features

  • tokio: provide tokio-based journal reader.
  • stream: provides stream for journal reader.

Examples

Read all (sync)

use {
    edjr::{journal::Journal, read::Read},
    std::{error::Error, fs::File, path::PathBuf},
};

fn main() -> Result<(), Box<dyn Error>> {
    let journal_path =
        PathBuf::from("/Path/to/Journals/Journal.date.log");
    let mut journal = Journal::<File>::open(journal_path)?;
    let entries = journal.read_all()?;

    Ok(())
}

Read all (async, features = [tokio])

use {
    edjr::{journal::Journal, async_read::AsyncRead},
    std::{error::Error, path::PathBuf},
    tokio::fs::File,
};

#[tokio::main]
fn main() -> Result<(), Box<dyn Error>> {
    let journal_path =
        PathBuf::from("/Path/to/Journals/Journal.date.log");
    let mut journal = Journal::<File>::open(journal_path).await?;
    let entries = journal.read_all().await?;

    Ok(())
}

View more examples in examples/

Supported events

  • AfmuRepairs
  • ApproachBody
  • ApproachSettlement
  • Backpack
  • BackpackChange
  • BookTaxi
  • Bounty
  • BuyAmmo
  • BuyDrones
  • BuyWeapon
  • Cargo
  • CargoDepot
  • CargoTransfer
  • CarrierJump
  • ChangeCrewRole
  • ClearImpound
  • CockpitBreached
  • CodexEntry
  • CollectCargo
  • CollectItems
  • ColonisationConstructionDepot
  • Commander
  • CommitCrime
  • CommunityGoal
  • CommunityGoalDiscard
  • CommunityGoalJoin
  • CommunityGoalReward
  • CrewAssign
  • CrewLaunchFighter
  • CrewMemberJoins
  • CrewMemberQuits
  • CrewMemberRoleChange
  • CrimeVictim
  • DataScanned
  • DatalinkScan
  • DatalinkVoucher
  • Died
  • Disembark
  • DockFighter
  • DockSRV
  • Docked
  • DockingCancelled
  • DockingDenied
  • DockingGranted
  • DockingRequested
  • DockingTimeout
  • EjectCargo
  • Embark
  • EndCrewSession
  • EngineerContribution
  • EngineerCraft
  • EngineerProgress
  • EscapeInterdiction
  • FCMaterials
  • FSDJump
  • FSDTarget
  • FSSAllBodiesFound
  • FSSBodySignals
  • FSSDiscoveryScan
  • FSSSignalDiscovered
  • FactionKillBond
  • FetchRemoteModule
  • FighterDestroyed
  • FighterRebuilt
  • Fileheader
  • Friends
  • FuelScoop
  • HeatDamage
  • HeatWarning
  • HullDamage
  • Interdicted
  • Interdiction
  • InvitedToSquadron
  • JetConeBoost
  • JetConeDamage
  • JoinACrew
  • JoinedSquadron
  • LaunchDrone
  • LaunchFighter
  • LaunchSRV
  • LeaveBody
  • LeftSquadron
  • Liftoff
  • LoadGame
  • Loadout
  • Location
  • Market
  • MarketBuy
  • MarketSell
  • MassModuleStore
  • MaterialCollected
  • MaterialDiscovered
  • MaterialTrade
  • Materials
  • MissionAbandoned
  • MissionAccepted
  • MissionCompleted
  • MissionFailed
  • MissionRedirected
  • Missions
  • ModuleBuy
  • ModuleBuyAndStore
  • ModuleInfo
  • ModuleRetrieve
  • ModuleSell
  • ModuleSellRemote
  • ModuleStore
  • ModuleSwap
  • MultiSellExplorationData
  • Music
  • NavBeaconScan
  • NavRoute
  • NavRouteClear
  • NewCommander
  • NpcCrewPaidWage
  • Outfitting
  • PVPKill
  • Passengers
  • PayBounties
  • PayFines
  • Powerplay
  • PowerplayCollect
  • PowerplayMerits
  • PowerplayRank
  • Progress
  • Promotion
  • QuitACrew
  • Rank
  • RebootRepair
  • ReceiveText
  • RedeemVoucher
  • RefuelAll
  • RefuelPartial
  • Repair
  • RepairAll
  • RepairDrone
  • Reputation
  • RequestPowerMicroResources
  • ReservoirReplenished
  • RestockVehicle
  • Resupply
  • Resurrect
  • SAAScanComplete
  • SAASignalsFound
  • SRVDestroyed
  • Scan
  • ScanBaryCentre
  • ScanOrganic
  • Scanned
  • Screenshot
  • SearchAndRescue
  • SelfDestruct
  • SellDrones
  • SellOrganicData
  • SellWeapon
  • SendText
  • SetUserShipName
  • ShieldState
  • ShipLocker
  • ShipTargeted
  • Shipyard
  • ShipyardBuy
  • ShipyardNew
  • ShipyardSell
  • ShipyardSwap
  • ShipyardTransfer
  • Shutdown
  • SquadronCreated
  • SquadronStartup
  • StartJump
  • Statistics
  • StoredModules
  • StoredShips
  • SuitLoadout
  • SupercruiseDestinationDrop
  • SupercruiseEntry
  • SupercruiseExit
  • SwitchSuitLoadout
  • Synthesis
  • SystemsShutdown
  • TechnologyBroker
  • Touchdown
  • USSDrop
  • UnderAttack
  • Undocked
  • UseConsumable
  • VehicleSwitch
  • WingAdd
  • WingInvite
  • WingJoin
  • WingLeave

Installation

$ cargo add edjr
// or via GitHub repository
$ cargo add edjr --git https://github.com/stefanlight8/edjr