How amapchan/v2rayn_flutter-fork works
v2rayN Flutter is a desktop client scaffold for account access and proxy-service management, with a documented backend API and UI for lines, account, settings, activity, trading, DNS, and app information. The README says proxy-core control is only a placeholder; the bundled Xray binaries are not evidence of an active runtime integration. Dart sources were not sampled, so links between screens, services, and state are limited to the documented app flow and stated API boundary.
Main entry points: main_shell.dart Main shell · main.dart App entry · personal_center_page.dart Personal center · settings_page.dart Settings
Components 20
App shell
- App entry
lib/main.dart - Main shell
lib/pages/main_shell.dart
Account access
- Login
lib/pages/login_page.dart - Personal center
lib/pages/personal_center_page.dart - Change password
lib/pages/change_password_dialog.dart
Client features
- Lines
lib/pages/lines_page.dart - Settings
lib/pages/settings_page.dart - DNS settings
lib/pages/dns_settings_page.dart - Activity
lib/pages/activity_page.dart - Trade manager
lib/pages/trade_manager_page.dart - About
lib/pages/about_page.dart
Services and models
- API service
lib/services/api_service.dart - App state
lib/app_state.dart - Config store
lib/services/client_config_store.dart - Token store
lib/services/token_store.dart - Client config
lib/models/client_config.dart - Line model
lib/models/line_node.dart - User model
lib/models/user_info.dart
Other components
- User
- Backend API
Connections 12
- User → App entry: opens
- App entry → Main shell: starts app
- User → Login: uses
- Main shell → Lines: presents
- Main shell → Personal center: presents
- Main shell → Settings: presents
- Main shell → Activity: presents
- Main shell → Trade manager: presents
- Main shell → About: presents
- Settings → DNS settings: offers
- Personal center → Change password: offers
- API service → Backend API: API requests