108 lines
2.3 KiB
Markdown
108 lines
2.3 KiB
Markdown
# Network App Mobile
|
|
|
|
Flutter mobile app for The Network App — an AI-powered CRM for wealth management advisors.
|
|
|
|
## Stack
|
|
|
|
- **Framework:** Flutter 3.x
|
|
- **State Management:** Riverpod
|
|
- **Navigation:** GoRouter
|
|
- **HTTP Client:** Dio
|
|
|
|
## Getting Started
|
|
|
|
### Prerequisites
|
|
|
|
- [Flutter](https://flutter.dev/docs/get-started/install) 3.16+
|
|
- iOS: Xcode 15+ (for iOS builds)
|
|
- Android: Android Studio with SDK
|
|
|
|
### Setup
|
|
|
|
1. Clone the repo:
|
|
```bash
|
|
git clone https://git.infra.nkode.tech/hammer/network-app-mobile.git
|
|
cd network-app-mobile
|
|
```
|
|
|
|
2. Create platform files (first time only):
|
|
```bash
|
|
flutter create . --project-name network_app
|
|
```
|
|
|
|
3. Install dependencies:
|
|
```bash
|
|
flutter pub get
|
|
```
|
|
|
|
4. Run code generation:
|
|
```bash
|
|
dart run build_runner build
|
|
```
|
|
|
|
5. Run the app:
|
|
```bash
|
|
flutter run
|
|
```
|
|
|
|
### Environment
|
|
|
|
Configure the API URL at build time:
|
|
```bash
|
|
flutter run --dart-define=API_BASE_URL=https://your-api.com
|
|
```
|
|
|
|
Or edit `lib/config/env.dart` for development.
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
lib/
|
|
├── main.dart # Entry point
|
|
├── app/
|
|
│ ├── app.dart # MaterialApp setup
|
|
│ └── router.dart # GoRouter configuration
|
|
├── config/
|
|
│ ├── env.dart # Environment config
|
|
│ └── theme.dart # App theming
|
|
├── features/
|
|
│ ├── auth/ # Login/Register
|
|
│ ├── clients/ # Client management
|
|
│ ├── emails/ # AI email generation
|
|
│ └── events/ # Event tracking
|
|
└── shared/
|
|
├── providers/ # Global Riverpod providers
|
|
├── services/ # API client, storage
|
|
└── widgets/ # Reusable components
|
|
```
|
|
|
|
## Features
|
|
|
|
- [x] Authentication (login/register)
|
|
- [x] Client list with search
|
|
- [x] Client detail view
|
|
- [x] Client create/edit form
|
|
- [x] AI email generation
|
|
- [x] Email drafts and sent
|
|
- [x] Upcoming events view
|
|
- [ ] Push notifications
|
|
- [ ] Offline support
|
|
|
|
## Building
|
|
|
|
### Android
|
|
```bash
|
|
flutter build apk --release
|
|
# or for app bundle:
|
|
flutter build appbundle --release
|
|
```
|
|
|
|
### iOS
|
|
```bash
|
|
flutter build ios --release
|
|
```
|
|
|
|
## API
|
|
|
|
This app connects to `network-app-api`. See that repo for backend setup.
|