zeekay 943553b778 fix(_app): wrap in GuiProvider + supply theme tokens for useThemeState
After shipping the first createGui-only patch (247cdf7), the runtime error
changed from "Err0" → "Missing theme." The root cause:
useThemeState in @hanzogui/web throws if ThemeStateContext.Provider
isn't above the component (parentId === ""). Calling createGui populates
the global config, but the tree must also be wrapped in <GuiProvider>
which materialises the ThemeProvider + GuiRoot + ComponentContext chain.

Three deltas in this commit:

  1. createGui now receives explicit light/dark themes and color/space/
     size/radius/zIndex tokens. Empty {} no longer satisfies getThemes
     Deduped + downstream theme spreads. The tokens are minimal but
     non-empty; @luxfi/ui uses Tailwind for styling, so we only need
     hanzogui's internals to accept the config.
  2. Top of render tree now wraps everything in <GuiProvider config>.
     GuiProvider renders ComponentContext → ThemeProvider → GuiRoot
     (isRootRoot=true), giving useThemeState the parent context it
     requires.
  3. createGui call moved out of the typeof-window block — server and
     client both need it (SSR also instantiates @luxfi/ui frames at
     module load, even though component render is gated by hydration).
2026-06-10 17:36:54 -07:00
2022-10-11 11:47:11 +03:00
2025-12-10 19:21:07 +01:00
2025-10-17 14:58:12 +02:00
2023-04-11 19:25:22 -03:00
2025-02-01 14:27:11 -06:00
2025-11-18 10:03:49 +01:00
2023-02-24 12:37:08 -05:00

DEPRECATED — see ~/work/lux/explorer/

The standalone Next.js frontend in this repo is no longer deployed. Its build output is embedded directly into the Lux Explorer Go binary (ghcr.io/luxfi/explorer:1.2.1) via go:embed. Run that single binary in production.

This repo is preserved as the source of the embedded SPA assets. Updates to the UI ship via a rebuild of the explorer image, not by deploying this Next.js app separately.

Canonical deploy: ~/work/lux/explorer/ (Go binary, single process, indexer + GraphQL + SPA, port 8090).

Lux Explore frontend (legacy)

Frontend application for Lux Network blockchain explorer

Running and configuring the app

App is distributed as a docker image. Here you can find information about the package and its recent releases.

You can configure your app by passing necessary environment variables when starting the container. See full list of ENVs and their description here.

docker run -p 3000:3000 --env-file <path-to-your-env-file> ghcr.io/blockscout/frontend:latest

Alternatively, you can build your own docker image and run your app from that. Please follow this guide.

For more information on migrating from the previous frontend, please see the frontend migration docs.

Contributing

See our Contribution guide for pull request protocol. We expect contributors to follow our code of conduct when submitting code or comments.

Resources

License

License: GPL v3.0

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

S
Description
Lux Network Blockchain Explorer.
Readme GPL-3.0
598 MiB
Languages
TypeScript 96%
JavaScript 2.6%
Shell 0.6%
CSS 0.4%
Python 0.2%
Other 0.2%