RedMesh Navigator is the web console for running and observing RedMesh workloads on a Ratio1 Edge Node. It mirrors the operator workflow from edge_node develop and reuses interaction patterns from ratio1-drive.
The product is designed as a guided flow from authentication to investigation:
-
Sign in (
/)- Operator logs in using the RedMesh/CStore auth path.
- The login screen immediately shows runtime readiness pills for RedMesh API, CStore API, and optional R1FS API so operators can spot misconfiguration before starting work.
-
Operations dashboard (
/dashboard)- Landing page after login.
- Shows counts for ongoing/completed/stopped tasks, host identity, environment mode (live vs mock), refresh controls, and error indicators.
- Main list can be filtered to quickly focus on current operations.
-
Create task (
/dashboard/jobs/new)- Guided form for target, port range, worker count, feature set, payload URI, and advanced behavior knobs.
- Payload maps to the RedMesh FastAPI contract, so jobs created here can be replayed against edge runtime services.
-
Task deep dive (
/dashboard/jobs/:jobId, alias/dashboard/tasks/:jobId)- Single-task forensic view with aggregate findings, discovered ports, worker activity, timeline, per-worker details, and report history.
- Supports operational actions (refresh, stop job, stop monitoring) and report download for offline review.
-
Mesh view (
/mesh)- Geographic map of mesh nodes and peer distribution by country.
- Helps operators confirm node footprint and data source state (live or mock).
-
Advanced diagnostics (
/advanced)- Deployment-focused page for Swagger access, endpoint readiness, chainstore peers, and CStore/R1FS status diagnostics.
- Primary troubleshooting destination when runtime wiring is incomplete.
- Mock mode is enabled automatically when critical live values are missing (RedMesh URL, CStore URL, host ID).
- Forced mock toggles default to
truein current config resolution:EE_FORCE_MOCK_AUTH/FORCE_MOCK_AUTHEE_FORCE_MOCK_TASKS/FORCE_MOCK_TASKS
- Mock credentials (offline/testing):
admin/admin123operator/operator123
- Configurable admin credentials in mock auth path:
ADMIN_USERNAME(defaultadmin)ADMIN_PASSWORD(defaultadmin123)
- Local RedMesh admin password path:
- If
REDMESH_PASSWORDis set and auth is not forced to mock,admin/{REDMESH_PASSWORD}is accepted.
- If
- Install dependencies:
npm install
- Create
.env.local. - Choose one mode:
- Fast local/mock: keep env vars empty and run with seeded data.
- Live integration: set at least:
R1EN_HOST_IPAPI_PORTEE_CHAINSTORE_API_URLEE_HOST_IDEE_FORCE_MOCK_AUTH=falseEE_FORCE_MOCK_TASKS=false
- Optional env vars:
EE_R1FS_API_URLR1EN_CHAINSTORE_PEERS(also supportsEE_CHAINSTORE_PEERSorCHAINSTORE_PEERS)REDMESH_PASSWORD
- Run:
npm run dev
- Open:
http://localhost:3000
npm run dev- start development servernpm run build- production buildnpm run start- serve production buildnpm run lint- lint checksnpm run typecheck- TypeScript checksnpm test- Jest suitenpm run test:watch- Jest in watch mode
Tests live in __tests__/ and run against mock-backed APIs by default. For each feature, add both happy-path and failure-path coverage. Extend lib/api/mockData.ts when introducing new runtime scenarios so offline behavior stays close to RedMesh FastAPI responses.
app/- routes, layouts, providers, and API handlerscomponents/- UI primitives, dashboard modules, auth and layout building blockslib/api/- service clients, API typing, mock data, and adapterslib/domain/- shared domain metadata (feature catalog, schemas)lib/config/- runtime env/config resolutionlib/hooks/- client data hooks__tests__/- API and UI test coverage
- Worker App Runner deployments must provide live env vars and disable forced mock toggles.
- Never ship with
mockModeactive unintentionally. - Keep secrets in
lib/config/env.tsaccess paths; avoid readingprocess.envin UI components. - Keep the
/advancedSwagger experience aligned with the live RedMesh FastAPI service from Edge Node runtime.
- RedMesh API framework: https://github.com/Ratio1/edge_node/tree/develop/extensions/business/cybersec/red_mesh
- Ratio1 Drive UI reference: https://github.com/Ratio1/r1fs-demo
- Ratio1 Edge SDK: https://github.com/Ratio1/edge-sdk-ts