feat: new file

This commit is contained in:
Daniel
2026-03-01 17:21:15 +08:00
commit d705fd6c83
28 changed files with 5877 additions and 0 deletions

61
README.md Normal file
View File

@@ -0,0 +1,61 @@
# US-Iran Military Situation Display Dashboard
A production-ready data visualization dashboard with 1920×1080 resolution, dark-themed military-grade UI.
## Tech Stack
- **Build:** Vite (React + TypeScript)
- **Styling:** Tailwind CSS
- **State:** Zustand
- **Charts:** echarts, echarts-for-react
- **Maps:** react-map-gl, mapbox-gl
- **Icons:** lucide-react
- **Font:** Orbitron (Google Fonts)
## Setup
```bash
npm install
```
### Mapbox (optional)
For the interactive map, create a `.env` file:
```bash
cp .env.example .env
# Edit .env and add your Mapbox token from https://account.mapbox.com/access-tokens/
```
Without a token, the map area shows a placeholder with location labels.
## Development
```bash
npm run dev
```
## Build
```bash
npm run build
```
## Project Structure
```
src/
├── components/
│ ├── HeaderPanel.tsx # Top global overview & power index comparison
│ ├── ForcePanel.tsx # Reusable left/right panel for military forces
│ ├── WarMap.tsx # Mapbox GL (Persian Gulf center)
│ └── StatCard.tsx # Reusable number card
├── store/
│ └── situationStore.ts # Zustand store + WebSocket mock logic
├── data/
│ └── mockData.ts # TypeScript interfaces & initial mock data
├── pages/
│ └── Dashboard.tsx # Main layout (1920×1080)
├── App.tsx
└── index.css
```