Skip to content

intent-solutions-io/lit-with-intent

Repository files navigation

Vincent Network Status Dashboard

Public observability dashboard + authenticated control plane for Vincent actions.

Live: https://lit-with-intent.web.app

Operator: jeremy longshore / intent solutions io


Quick Verify

Confirm the system is operational:

# 1. Check API responds
curl -s https://lit-with-intent.web.app/api/v1/status | jq .ok
# Expected: true

# 2. Check health (should not be "unhealthy")
curl -s https://lit-with-intent.web.app/api/v1/health | jq '.data.overall'
# Expected: "healthy" or "degraded"

# 3. Check market data
curl -s https://lit-with-intent.web.app/api/v1/market | jq '.data.eth_usd'
# Expected: current ETH price (number)

# 4. Run full self-test (if cloned locally)
./scripts/selfcheck.sh

What This Is

  • Public read-only observability: Status, health, execution history, and market data available without authentication
  • Privileged control plane: PKP setup, token transfers, and manual health checks require API key or Firebase auth
  • Nothing else: This dashboard does not store private keys, execute arbitrary code, or provide direct wallet access

What This Is Not

  • Not a wallet or key management system
  • Not a place to store secrets
  • Not a trading platform
  • Not financial advice (market data is delayed and informational only)

Tech Stack

Layer Technology
Framework Next.js 15 (App Router)
UI React 19 + Tailwind CSS
Database Firestore
Hosting Firebase Hosting (frameworksBackend)
Auth Firebase Auth + API Key
IaC OpenTofu (Terraform)
CI/CD GitHub Actions + Workload Identity Federation
Charts TradingView Lightweight Charts

API Endpoints

Public (No auth required)

Endpoint Method Description
/api/v1/status GET System status summary with component health
/api/v1/health GET Aggregated health snapshot
/api/v1/health/lit GET Lit network health
/api/v1/health/vincent GET Vincent SDK health
/api/v1/health/chain GET Chain RPC health
/api/v1/executions GET Recent execution history
/api/v1/market GET Market snapshot (ETH/LIT prices, cached)
/api/openapi.json GET OpenAPI 3.0 specification

Privileged (Auth required)

Endpoint Method Description
/api/v1/health/run POST Trigger manual health check
/api/v1/vincent/setup POST Bootstrap Vincent environment
/api/v1/vincent/send POST Execute token transfer with policy enforcement
/api/v1/market/fetch POST Force refresh market data from CoinGecko

Authentication

API Key:

curl -X POST https://lit-with-intent.web.app/api/v1/health/run \
  -H "X-API-Key: your-api-key"

Firebase ID Token:

curl -X POST https://lit-with-intent.web.app/api/v1/health/run \
  -H "Authorization: Bearer <firebase-id-token>"

Idempotency (for write operations):

curl -X POST https://lit-with-intent.web.app/api/v1/vincent/send \
  -H "X-API-Key: your-api-key" \
  -H "Idempotency-Key: send_unique123" \
  -H "Content-Type: application/json" \
  -d '{"to":"0x...", "amount":"0.01"}'

Pages

Path Description
/ Home - Overview, API endpoints, quick start
/dashboard Live monitoring, pipeline status, market snapshot
/market Market data with price chart
/docs API documentation, curl examples, status definitions
/about Architecture overview, tech stack, operator info
/trust Security posture, audit status
/privacy Privacy policy
/terms Terms of service

Local Development

# Install dependencies
npm install

# Copy environment file
cp .env.example .env.local
# Edit .env.local with your Firebase credentials

# Run development server
npm run dev

Open http://localhost:3000.

Available Scripts

Command Description
npm run dev Start development server
npm run build Production build
npm run start Start production server
npm run lint Run ESLint
npm run typecheck Run TypeScript type checking

Deployment

Infrastructure Setup

cd infra/tofu

# Copy and configure variables
cp terraform.tfvars.example terraform.tfvars
# Edit terraform.tfvars with your GCP project details

# Initialize and apply
tofu init
tofu plan
tofu apply

Manual Deploy

# Build
npm run build

# Deploy via Firebase CLI
firebase deploy

CI/CD

Push to main branch triggers automatic deployment via GitHub Actions with Workload Identity Federation.

Post-Deployment Verification

# Run self-check against production
./scripts/selfcheck.sh https://lit-with-intent.web.app

# Or against local
./scripts/selfcheck.sh http://localhost:3000

Project Structure

vincent-dashboard/
├── src/
│   ├── app/
│   │   ├── api/v1/           # API routes
│   │   │   ├── status/       # System status
│   │   │   ├── health/       # Health endpoints
│   │   │   ├── executions/   # Execution history
│   │   │   ├── market/       # Market data
│   │   │   └── vincent/      # Vincent operations
│   │   ├── dashboard/        # Dashboard pages
│   │   ├── market/           # Market page
│   │   ├── docs/             # Documentation page
│   │   ├── about/            # About page
│   │   ├── trust/            # Security page
│   │   ├── privacy/          # Privacy policy
│   │   ├── terms/            # Terms of service
│   │   └── page.tsx          # Home page
│   ├── components/           # React components
│   │   ├── layout/           # Header, Footer
│   │   ├── MarketCard.tsx    # Market snapshot card
│   │   ├── NetworkHealth.tsx # Health display
│   │   └── ...
│   └── lib/
│       ├── firebase/         # Firebase SDK
│       ├── security/         # Auth, rate limit, idempotency
│       ├── vincent/          # Vincent SDK wrapper
│       ├── monitoring/       # Health checks
│       ├── market/           # Market data client
│       └── config/           # Links, constants
├── scripts/
│   └── selfcheck.sh          # Post-deployment verification
├── infra/tofu/               # OpenTofu/Terraform IaC
└── .github/workflows/        # CI/CD

Security

  • Public endpoints are read-only with rate limiting
  • Privileged endpoints require authentication
  • API keys use timing-safe comparison
  • Idempotency keys prevent duplicate transfers
  • All responses include request_id for tracing
  • No private keys stored in this system

External Links

Lit Protocol

Network

Contact


License

Private - For Lit Protocol Partnership

About

Lit Protocol reference implementation for Intent Solutions. Decentralized key management and conditional access patterns.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors