Flutter App
This commit is contained in:
120
flutter_app/README.md
Normal file
120
flutter_app/README.md
Normal file
@@ -0,0 +1,120 @@
|
||||
# rmtPocketWatcher Flutter App
|
||||
|
||||
A cross-platform Flutter application for tracking Star Citizen AUEC prices.
|
||||
|
||||
## Setup Requirements
|
||||
|
||||
### Windows Desktop Development
|
||||
|
||||
You need Visual Studio 2022 with specific components. Run the Visual Studio Installer and ensure you have:
|
||||
|
||||
1. **Desktop development with C++** workload
|
||||
2. **MSVC v143 - VS 2022 C++ x64/x86 build tools** (latest version)
|
||||
3. **Windows 11 SDK** (10.0.22621.0 or later)
|
||||
4. **CMake tools for Visual Studio**
|
||||
|
||||
### Quick Fix for Visual Studio Components
|
||||
|
||||
1. Open **Visual Studio Installer**
|
||||
2. Click **Modify** on Visual Studio Community 2022
|
||||
3. Go to **Workloads** tab
|
||||
4. Check **Desktop development with C++**
|
||||
5. Go to **Individual components** tab
|
||||
6. Ensure these are checked:
|
||||
- MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest)
|
||||
- Windows 11 SDK (10.0.22621.0)
|
||||
- CMake tools for Visual Studio
|
||||
7. Click **Modify** and wait for installation
|
||||
|
||||
## Development Commands
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
flutter pub get
|
||||
|
||||
# Check setup
|
||||
flutter doctor
|
||||
|
||||
# Run on Windows (after fixing VS components)
|
||||
flutter run -d windows
|
||||
|
||||
# Build for Windows
|
||||
flutter build windows
|
||||
|
||||
# Run on web (works without C++ components)
|
||||
flutter run -d chrome
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
lib/
|
||||
├── main.dart # App entry point
|
||||
├── models/
|
||||
│ └── price_data.dart # Data models
|
||||
├── providers/
|
||||
│ └── price_provider.dart # State management
|
||||
├── screens/
|
||||
│ └── home_screen.dart # Main dashboard
|
||||
├── services/
|
||||
│ ├── api_service.dart # REST API
|
||||
│ ├── websocket_service.dart # WebSocket
|
||||
│ └── storage_service.dart # Local storage
|
||||
└── widgets/
|
||||
├── alerts_panel.dart # Price alerts
|
||||
├── price_chart.dart # Charts
|
||||
├── price_stats_card.dart # Stats cards
|
||||
└── vendor_table.dart # Vendor table
|
||||
```
|
||||
|
||||
## Features
|
||||
|
||||
- **Real-time price tracking** via WebSocket
|
||||
- **Bloomberg-style dashboard** with stats cards
|
||||
- **Interactive price charts** with fl_chart
|
||||
- **Price alerts** with local notifications
|
||||
- **Vendor comparison table** with sorting
|
||||
- **Cross-platform support** (Windows, macOS, Linux, Android, iOS)
|
||||
|
||||
## Backend Integration
|
||||
|
||||
The app connects to the existing TypeScript backend:
|
||||
- **API**: `http://localhost:3000`
|
||||
- **WebSocket**: `ws://localhost:3000/ws/index`
|
||||
|
||||
Configure in `.env` file:
|
||||
```env
|
||||
API_URL=http://localhost:3000
|
||||
WS_URL=ws://localhost:3000/ws/index
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### "Visual Studio is missing necessary components"
|
||||
- Install the C++ workload and components listed above
|
||||
- Restart your terminal after installation
|
||||
- Run `flutter doctor` to verify
|
||||
|
||||
### "Unable to find directory entry in pubspec.yaml"
|
||||
- Ensure the `assets/` directory exists
|
||||
- Run `flutter clean && flutter pub get`
|
||||
|
||||
### WebSocket connection issues
|
||||
- Ensure backend is running on port 3000
|
||||
- Check firewall settings
|
||||
- Verify `.env` configuration
|
||||
|
||||
## Mobile Support
|
||||
|
||||
The same codebase works on mobile with responsive design:
|
||||
- **Desktop**: Multi-column layout
|
||||
- **Mobile**: Single-column scrollable layout
|
||||
- **Responsive charts** and tables
|
||||
|
||||
```bash
|
||||
# Run on Android (requires Android Studio)
|
||||
flutter run -d android
|
||||
|
||||
# Run on iOS (requires Xcode on macOS)
|
||||
flutter run -d ios
|
||||
```
|
||||
Reference in New Issue
Block a user