docs: rewrite README and add PRODUCT, ARCHITECTURE, ROADMAP, TODO per governance framework

This commit is contained in:
crmuncher 2026-07-03 15:56:26 +02:00
parent f7938dc5e3
commit ba8f72ae96
5 changed files with 140 additions and 76 deletions

32
ARCHITECTURE.md Normal file
View file

@ -0,0 +1,32 @@
# RMI Frontend — Architecture
**Status:** canonical
**Last updated:** 2026-07-03
## Overview
Single-page React 19 application built with Vite, styled with Tailwind, state managed with Zustand + TanStack Query.
## Structure
## Tech
- React 19
- TypeScript
- Vite
- Tailwind CSS
- Zustand (client state)
- TanStack Query (server state)
- lightweight-charts / echarts / recharts
## API layer
- OpenAPI types generated at src/types/api.ts
- Runtime client in src/services/rmi/api.ts
## Current issues
- src/pages/MCPDocsPage.tsx is 101 KB and mixes rendering with data
- src/data/scamSchoolCurriculum.ts is 143 KB and should be loaded as data
- TypeScript strictness not enforced
- No CI
## Build

41
PRODUCT.md Normal file
View file

@ -0,0 +1,41 @@
# RMI Frontend — Product Charter
**Product:** RMI Web Frontend
**Repo:** git.rugmunch.io/RugMunchMedia/rmi-frontend
**Status:** Production
## Problem
Users need a fast, modern web interface to consume RMI risk intelligence, charts, and wallet forensics.
## User
- Retail crypto users researching tokens
- Power users investigating wallets
- Internal operators using the admin dashboard
## Scope
- React 19 + Vite + Tailwind web app
- Pages: market overview, token detail, wallet forensics, rug charts, rug maps, scam school, MCP docs
- API client auto-generated from backend OpenAPI
- WebSocket alert stream
## Anti-scope
- No backend logic (lives in rmi-backend)
- No wallet generation (lives in walletpress)
- No social protocol clients (lives in degenfeed-web)
- No scraping engine (lives in pryscraper)
## Success criteria
- npm run build and tsc --noEmit pass
- GitHub Actions CI runs on every PR
- any / @ts-ignore count reduced by 50%
- No source file >500 lines
## Current reality
- Build passes
- No CI
- 850 type-safety violations
- Several files >50 KB
## Fleet dependencies
- RMI backend http://127.0.0.1:8000
- Supabase (public anon key only)

View file

@ -1,88 +1,34 @@
# RMI Frontend
The web application powering [rugmunch.io](https://rugmunch.io) — the Bloomberg terminal of crypto.
**Repo:** git.rugmunch.io/RugMunchMedia/rmi-frontend
**Deploy:** Static build served via Cloudflare tunnel on Talos
**Stack:** React 19 + Vite + Tailwind CSS
**API target:** Backend at http://127.0.0.1:8000 (Talos)
Part of [RMI (Rug Munch Intelligence)](https://github.com/Rug-Munch-Media-LLC/rugmuncher-backend), the first open-source crypto intelligence platform. Built by [Rug Munch Media LLC](https://rugmunch.io), a Wyoming-based software company.
## What it is
The web UI for RMI. Connects to the RMI backend for token scans, wallet forensics, market data, charts, and MCP catalog browsing.
---
## Status
Production. Build succeeds with npm run build.
## What it does
## Quick start (local)
The RMI Frontend is the user-facing surface for the RMI platform:
- **Market intelligence** — real-time prices, charts, and trends across 18+ chains
- **Token scanner** — paste any address, get instant rug-pull / honeypot risk scoring
- **Wallet forensics** — visual cluster maps, fund flow tracing, and bad-actor flagging
- **News & sentiment** — clustered crypto news with AI-generated summaries
- **MCP catalog** — discover and pay for premium AI-agent tools
## Quick start
```bash
npm install
cp .env.example .env
# edit .env to point at the backend (default: http://localhost:8000)
npm run dev # vite dev server on :5173
npm run build # production build to dist/
```
## Deploy
```bash
# Build + deploy to VPS
npm run build
tar czf build.tar.gz dist/
scp build.tar.gz user@server:/tmp/
ssh user@server 'tar xzf /tmp/build.tar.gz -C /var/www/rmi/ && rm /tmp/build.tar.gz'
```
## Tech stack
- **React 19** + TypeScript
- **Vite** for build/dev
- **Tailwind CSS** for styling
- **DataBus client** for backend data
- **MCP integration** for AI-agent workflows
## Environment
See `.env.example`. The frontend only uses **public** Supabase keys and the backend API URL. All real secrets stay in the backend.
```bash
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=sb_publishable_...
VITE_API_URL=http://localhost:8000
```
## Related repos
- 🐙 **Backend** (canonical): https://github.com/Rug-Munch-Media-LLC/rugmuncher-backend
- 🐙 **Docs**: https://github.com/Rug-Munch-Media-LLC/rmi-docs
- 🐙 **RugMaps**: https://github.com/Rug-Munch-Media-LLC/rugmaps
- 🐙 **RugCharts**: https://github.com/Rug-Munch-Media-LLC/rugcharts
- 🦊 **GitLab mirror**: https://gitlab.com/cryptorugmuncher/rugmuncher-backend
- 🤗 **HuggingFace**: https://huggingface.co/cryptorugmuncher/rugmuncher-backend
## Links
- 🌐 Website: https://rugmunch.io
- 📧 Contact: info@rugmunch.io
- 💬 Telegram: https://t.me/cryptorugmuncher
- 🐦 X / Twitter: https://x.com/cryptorugmunch
---
**Built by Rug Munch Media LLC · Wyoming, USA**
*Open-source crypto intelligence. AI-native. Built to last.*
<!-- ci-test-marker: Thu Jul 2 05:12:54 +07 2026 -->
## Current issues
- No GitHub Actions CI
- 850 occurrences of any / @ts-ignore / @ts-expect-error
- src/pages/MCPDocsPage.tsx is 101 KB (must be split)
- src/data/scamSchoolCurriculum.ts is 143 KB (should be data-driven)
## Standards
This repo follows Rug Munch Media standards:
https://git.rugmunch.io/RugMunchMedia/standards
## Docs
- PRODUCT.md — charter
- ARCHITECTURE.md — components
- ROADMAP.md — next 90 days
- TODO.md — current tasks

27
ROADMAP.md Normal file
View file

@ -0,0 +1,27 @@
# RMI Frontend — Roadmap
**Next 90 days.**
## Week 1 — CI
- Add .github/workflows/ci.yml
- Run npm ci, Biome check, tsc --noEmit, vitest run
- Enforce build pass on PR
## Week 2 — Type discipline
- Enable strict: true in tsconfig.app.json
- Reduce any / @ts-ignore by 50%
- Fix top 10 type error files
## Week 3 — File splits
- Split MCPDocsPage.tsx into feature modules
- Move scamSchoolCurriculum.ts into data files or CMS
- Split RugChartsPage.tsx and RugMapsPage.tsx
## Week 4 — Standards parity
- Add web3-safety and hallucination-check pre-commit hooks
- Ensure make check target matches backend/Pry
## Acceptance
- CI green on every PR
- tsc --noEmit passes
- No source file >500 lines

18
TODO.md Normal file
View file

@ -0,0 +1,18 @@
# RMI Frontend — TODO
## Active
- [ ] Add .github/workflows/ci.yml
- [ ] Enable strict: true in tsconfig.app.json
- [ ] Split MCPDocsPage.tsx into modules
- [ ] Move scamSchoolCurriculum.ts out of source code
## Next
- [ ] Reduce any / @ts-ignore count to <400
- [ ] Add pre-commit hooks matching walletpress
- [ ] Document API client generation in ARCHITECTURE.md
## Blocked
- None
## Done
- Build pipeline verified (npm run build passes)