| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
One UI for Base network dashboards and stats: snapshots, network upgrades, and the Vibenet devnet explorer/faucet, under a single shell.
A standalone Next.js (App Router) app, deployed on Vercel. Migrated out of the internal Nx template so it builds and ships with the standard Next toolchain.
npm install
cp .env.example .env.local # fill in values as needed
npm run dev # http://localhost:3000 (external — public site)
npm run dev:internal # http://localhost:3000 (internal — includes Internal Explorer)npm run dev runs the external build (what ships to Vercel); internal-only sections like Internal Explorer are absent (their routes/API 404). Use npm run dev:internal to run the internal build locally with those sections visible. See Deployment targets.
.github/workflows/ci.yml runs on every pull request and on pushes to main:
CodeQL, StepSecurity, Heimdall, and the Vercel preview build are configured outside this repo at the org/platform level.
See .env.example. NEXT_PUBLIC_VIBENET_* are public URLs. The snapshots API needs Cloudflare R2 credentials (BASE_*_R2_*), which are secrets set in the Vercel project settings.
public/llms.txt, public/llms-full.txt, and public/AGENTS.md are generated from the route tree by the scripts in scripts/. A post-commit git hook keeps them fresh: mention llms.txt or agents.md in a commit message (or add/rename a route file) and the hook regenerates them in a follow-up commit.
The hook is off until you enable it in your clone — core.hooksPath is a local git setting and can't be committed, so each clone opts in once:
./githooks/install.sh # scope: --local; never touches global/system git configBypass a single commit with SKIP_DOCS_HOOK=1 git commit … or a [skip-docs] message. To disable: ./githooks/uninstall.sh. See githooks/README.md for details.
The same source builds two deployables, chosen by the build/dev script:
deploy.config.mjs declares which sections ship to which target (the SURFACES map). The scripts set NEXT_PUBLIC_DEPLOY_TARGET. A section not included in a target is unreachable there: its routes and API return 404, and it's dropped from the nav, sitemap, and llms files. (Its client chunks may still be built — this repo is public, so the guarantee is unreachability, not omission from the bundle.) Internal Explorer (/internal-explorer) is internal-only today, and CI enforces its absence from the public build.
To run the other variant locally you can either use the *:internal scripts or set NEXT_PUBLIC_DEPLOY_TARGET in .env.local to pin a default. The scripts take precedence over .env.local, so a pinned value never locks you out of either variant. Vercel sets no value, so the public deploy is always external.
To add an environment-specific page, add one SURFACES entry (middleware and the llms generator pick it up automatically) and gate its nav entry / layout / API guard on surfaceEnabled(...). deploy.config.test.mjs covers the matrix logic.
Deployed on Vercel (external target). Push to the default branch to ship; pull requests get preview deployments. The internal target is built and deployed separately by an internal deployment repo.
MIT — see LICENSE, with the exceptions in NOTICE. The Base Sans brand typefaces under public/fonts/ are not MIT licensed and may not be reused outside this project; NOTICE also carries third-party attribution for the bundled code in vendor/aa/.
| Back | FazBrowse Home | New Git URL |