EVE Flipper is a local-first market analysis platform for EVE Online traders. It combines live ESI order books, historical market behavior, and execution-aware math to surface actionable opportunities across multiple trading workflows.
This project is a fork of the original eveflipper repository and has diverged significantly to support the maintainer’s preferred EVE playstyle and workflows.
This fork prioritizes the maintainer’s preferences for day-to-day usage, so contributors and users should expect opinionated defaults and workflow decisions in areas such as:
- route and planning preferences
- market/scan/workbench behavior
- UI density, sorting, and filtering defaults
- quality-of-life workflow tweaks
- Flipper (Radius): local-radius opportunity scanning workflow tuned for fast route-to-execution decisions.
- Batch Builder: one-click manifest generation from selected deals to streamline hauling and execution prep.
- Pinned Opportunities tab: cross-tab pinning and comparison snapshots for scan, station, regional, and contract opportunities.
- Expanded workflow tabs: additional workflows such as Contract Arbitrage, Industry, War Tracker, and PLEX+ beyond baseline trading views.
Flipper (Radius): local buy/sell opportunities with execution-aware metrics.Regional Trade: cross-region day-trade scanner with target marketplace controls and grouped output.Contract Arbitrage: contract valuation and liquidation scenarios.Route: multi-hop route builder with ISK/jump constraints.Station Trading: same-station scanner with liquidity/risk filters.Industry: production planning and industry ledger workflows.War Tracker: demand/activity view for region-level opportunities.PLEX+: PLEX analytics and profitability dashboards.
Execution-aware pricing: expected fill price, slippage, fillability, and real profit fields.System blacklist: ignore selected systems globally in scan parameters.Batch Builder: build same-route cargo manifests from a selected deal.Auto-refresh: cache-aware refresh for Flipper and Regional tabs.Player structures support: optional structure inclusion (requires EVE login and access).Watchlist + Scan History: persist and revisit tracked items and previous scans.Pinned Opportunities: keep user-scoped opportunities pinned across Scan, Station Trading, Regional Trade, and Contract Arbitrage flows.
Pinned Opportunities is persistent, user-scoped tracking for selected opportunities across scan, station, regional_day, and contracts views. You can pin in each source table, then review all tracked rows in one compare-focused tab.
- Run any supported scan/tab and identify an opportunity to track.
- Click Pin in the relevant source table:
ScanResultsTableStationTradingtableRegionalDayTraderTableContractResultsTable
- Open the Pinned Opportunities tab to review the latest normalized metrics.
- Use the compare filter to switch baseline:
Last scan24hCustom snapshot
- Interpret delta columns and trend colors/icons.
- Use Unpin on rows you no longer want to track.
- Profit: current normalized profit value, plus delta versus the selected baseline.
- Margin: current normalized margin percent, with both absolute percentage-point delta and relative percent change where available.
- Volume: normalized liquidity/turnover indicator for the source row.
- Route risk: normalized route/safety risk proxy for the source row; increases indicate more risk and decreases indicate reduced risk.
Trend indicators use shared direction semantics:
- Green / ▲: positive increase versus baseline.
- Red / ▼: negative decrease versus baseline.
- Dim / •: neutral/no change.
- —: no baseline available yet.
Formatting and rounding use existing frontend formatter helpers for consistency:
- ISK values use the same
formatISKconventions. - Margin/percent values use
formatMargin. - Counts/other numeric values use
formatNumber.
- Rows from all supported tabs are normalized into one pinned payload schema (
source,opportunity_key, normalizedmetrics, optional metadata). - Stable identity is preserved with deterministic keys where possible:
- Scan + Regional:
flip:{type_id}:{buy_location_id}:{sell_location_id} - Station:
station:{type_id}:{station_id} - Contracts:
contract:{contract_id}
- Scan + Regional:
- Source caveats:
- Contract rows may include contract-specific context (for example liquidation-jump-style risk fields).
- Station rows can include station/system-scoped liquidity and station-specific risk proxies.
- Scan/regional rows include route-oriented buy/sell location identity and jump/risk proxies.
- Pin button missing: confirm you are in a supported table/view and (where required) using the correct auth/user scope for that workflow.
- No delta shown: a baseline snapshot does not exist yet for the selected compare mode.
- Unexpected trend: confirm the compare filter (
Last scan,24h,Custom snapshot) matches the baseline you intended. - Row disappeared: the opportunity may no longer exist in the latest scan result set; pinned records and snapshots remain source-of-truth history for comparisons.
- Single backend binary with embedded frontend.
- Default bind:
127.0.0.1:13370. - SQLite persistence for config, history, and local state.
| Station Trading | Route Trading | Flipper (Radius) |
|---|---|---|
![]() |
![]() |
![]() |
Download the latest build:
Release asset naming:
- Classic binary:
eve-flipper-windows-amd64.exe(andlinux/darwinvariants) - Wails desktop binaries:
eve-flipper-wails-windows-amd64.exe,eve-flipper-wails-linux-amd64,eve-flipper-wails-linux-arm64,eve-flipper-wails-darwin-amd64,eve-flipper-wails-darwin-arm64
Run the binary and open:
http://127.0.0.1:13370
Prerequisites:
- Go
1.25+ - Node.js
20+ - npm
git clone https://github.com/ilyaux/Eve-flipper.git
cd Eve-flipper
npm -C frontend install
npm -C frontend run build
go build -o build/eve-flipper .
./build/eve-flipperWindows PowerShell helpers:
.\make.ps1 build
.\make.ps1 runUnix Make targets:
make build
make runThis mode keeps the existing runtime modes untouched (Go embedded web app and Tauri),
and adds an additional desktop build powered by Wails.
PowerShell:
.\make.ps1 wailsOutput:
build/eve-flipper-wails.exe
Manual build equivalent:
go build -tags wails,production -ldflags "-s -w -H=windowsgui -X main.version=dev" -o build/eve-flipper-wails.exe .Run directly:
.\make.ps1 wails-runUnix Make:
make wails
make wails-run./eve-flipper --host 127.0.0.1 --port 13370| Flag | Default | Description |
|---|---|---|
--host |
127.0.0.1 |
Bind address (0.0.0.0 for LAN/remote access) |
--port |
13370 |
HTTP port |
Many scanners work without login, but these features require EVE SSO:
- Character-aware fees/skills autofill
- Character orders/assets-based workflows
- Player structure market data and structure names
- Corporation dashboards/endpoints
Create .env in repo root for local/source builds:
ESI_CLIENT_ID=your-client-id
ESI_CLIENT_SECRET=your-client-secret
ESI_CALLBACK_URL=http://localhost:13370/api/auth/callbackDo not commit .env.
Backend:
go run .Frontend dev server:
npm -C frontend install
npm -C frontend run devTo prevent UI-density and state-reset regressions in the Radius ⇄ Route flow, keep the App.routeWorkspaceContinuity.integration.test.tsx suite as a required frontend CI check.
npm -C frontend run test -- App.routeWorkspaceContinuity.integration.test.tsxTests:
go test ./...Production frontend build check:
npm -C frontend run buildDocs validation check:
make docs-checkPinned opportunity endpoints (user-scoped):
GET /api/pinned-opportunitiesPOST /api/pinned-opportunitiesDELETE /api/pinned-opportunities/{opportunityKey}GET /api/pinned-opportunities/snapshotsPOST /api/pinned-opportunities/snapshots
Minimal add-pin payload example:
{
"opportunity_key": "flip:34:60003760:60008494",
"tab": "scan",
"payload": {
"source": "scan",
"opportunity_key": "flip:34:60003760:60008494",
"type_id": 34,
"metrics": {
"profit": 1250000,
"margin": 12.4,
"volume": 8500,
"route_risk": 3
}
}
}- Project wiki: https://github.com/ilyaux/Eve-flipper/wiki
- Getting Started: https://github.com/ilyaux/Eve-flipper/wiki/Getting-Started
- API Reference: https://github.com/ilyaux/Eve-flipper/wiki/API-Reference
- Station Trading: https://github.com/ilyaux/Eve-flipper/wiki/Station-Trading
- Contract Scanner: https://github.com/ilyaux/Eve-flipper/wiki/Contract-Scanner
- Execution Plan: https://github.com/ilyaux/Eve-flipper/wiki/Execution-Plan
- PLEX Dashboard: https://github.com/ilyaux/Eve-flipper/wiki/PLEX-Dashboard
- By default, server listens only on localhost.
- ESI credentials are optional for non-SSO features.
- If exposed beyond localhost (
--host 0.0.0.0), use your own network hardening (firewall/reverse proxy/TLS).
This fork is maintained according to maintainer preference. If you want to propose a change, open an issue to discuss scope and fit before submitting a pull request.
MIT License. See LICENSE.
EVE Flipper is an independent third-party project and is not affiliated with CCP Games. EVE Online and related trademarks are property of CCP hf.
Original project: ilyaux/Eve-flipper on GitHub.


