7 Commits
Author SHA1 Message Date
zeekay c78e72033c docs: chain routes are /v1/chain
luxd serves chain APIs under one segment from constants.ChainAliasPrefix
(constants v1.6.4, node v1.36.181):

  /v1/bc/<alias>/...   -> /v1/chain/<alias>/...
  /ext/bc/<alias>/...  -> /v1/chain/<alias>/...

Observations keep their original addresses: a dated note or a recorded status
code is a fact about when it was written, not an instruction to follow.
2026-08-30 17:13:55 -07:00
zeekayandHanzo Dev 8d136c6843 docs: publish /v1/bc/C/rpc, drop dead /ext/ URLs
/ext/ is gone from api.lux.network, api.zoo.network and api.hanzo.network
(all 404 today), so every published /ext/ URL was already broken. Convert
to the one canonical path and fix the URL forms that were dead for other
reasons at the same time:

  /mainnet|/testnet|/devnet path prefix -> the per-network host (404 today)
  api.testnet.lux.network, testnet-api.lux.network -> api.lux-test.network
  /ext/C/rpc (missing bc/) -> /v1/bc/C/rpc
  chain aliases + blockchain IDs under api.lux.network -> the L1s own host

Third-party RPC hosts (Avalanche, Flare, blastapi) are left untouched.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-27 18:00:43 -07:00
zeekay a47755267b docs(brand): add hero banner 2026-06-28 20:37:35 -07:00
zeekay 0a97dedfe9 unified explorer: single Go binary with embedded SPA + per-chain graph
Module renamed to github.com/luxfi/explorer (was -unified). Imports
luxfi/indexer/{daemon,evm,storage,explorer} and luxfi/graph/{engine,
indexer,storage} as libraries; embeds the luxfi/explore SPA via go:embed
all:static.

A new ChainSupervisor wraps the existing ChainRegistry: adding a chain
(via config / mDNS / admin API) spawns a per-chain indexer goroutine plus
one graph engine + indexer per enabled subgraph; removing cancels them
and frees the routes from a sync.Map dispatcher mounted on /v1/indexer/,
/v1/explorer/ (legacy alias), and /v1/graph/.

Config schema is fully per-chain: indexer poll interval, list of graph
subgraphs (each can pick a built-in schema like amm, securities, fhe…),
brand (name/coin/accent + on-disk icon/logo paths), token features, and
top-level networks list. /envs.js exposes the chain list and active
brand to the SPA at runtime, so a deploy can rebrand by remounting
chains.yaml + assets — no image rebuild.

Dockerfile clones luxfi/explore + luxfi/indexer + luxfi/graph as
siblings inside the build, populates ./static from the SPA build, and
produces one binary. CI checks out the three repos as siblings so the
local replace in go.mod works without tagged releases.
2026-05-05 21:03:52 -07:00
zeekay 1a6d559ccf docs: full README, compose.yml, chains.example.yaml, healthcheck, CI 2026-04-11 14:31:23 -07:00
zeekay 7ee5150d27 feat: include graph engine (subgraph replacement) in combined image
4 repos, 4 images:
  indexer  → chain data (blocks, txs, tokens, contracts)
  graph    → subgraph events (swaps, pools, DeFi, GraphQL)
  explore  → Next.js frontend
  explorer → all three combined (this)

Single image contains 3 binaries: indexer, graph, explorer.
Each can run standalone or together.
2026-04-11 13:50:07 -07:00
zeekay a2b779c20c feat: combined explorer image (indexer backend + explore frontend)
Three repos, three images:
  luxfi/indexer  → ghcr.io/luxfi/indexer  (Go backend, API + indexing)
  luxfi/explore  → ghcr.io/luxfi/explore  (Next.js frontend)
  luxfi/explorer → ghcr.io/luxfi/explorer (this: combined single image)

Dockerfile pulls both repos at build time, embeds the Next.js static
export into the Go binary via go:embed, produces a single container.
2026-04-11 13:28:48 -07:00