Skip to content

Commit ff9af6e

Browse files
committed
Revise README and streamline setup scripts
Expanded the README with detailed new project setup instructions, including steps for package renaming, Firebase, RevenueCat, and environment configuration. Simplified and reorganized pubspec.yaml scripts for easier project initialization, verification, and platform-specific setup.
1 parent 989b739 commit ff9af6e

File tree

2 files changed

+82
-31
lines changed

2 files changed

+82
-31
lines changed

README.md

Lines changed: 72 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,78 @@
1-
# enmay_flutter_starter
1+
# New Project Setup
22

3-
Flutter Starter Template
3+
Follow these steps when setting up a new project from this starter template:
44

5-
## Getting Started
5+
## 1. Initial Setup
66

7-
This project is a starting point for a Flutter application.
7+
```bash
8+
# Basic setup (dependencies + code generation)
9+
flutter pub run setup:new
810

9-
A few resources to get you started if this is your first Flutter project:
11+
# Full setup (includes iOS pods)
12+
flutter pub run setup:full
13+
```
1014

11-
- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
12-
- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook)
15+
## 2. Change Package Name
1316

14-
For help getting started with Flutter development, view the
15-
[online documentation](https://docs.flutter.dev/), which offers tutorials,
16-
samples, guidance on mobile development, and a full API reference.
17+
- Use this command to change package name: `flutter pub run change:package com.new.package.name`
18+
- Replace `com.new.package.name` with your desired package name
19+
20+
## 3. Update Project Metadata
21+
22+
- Update `name` and `description` in `pubspec.yaml`
23+
- Update app name in platform-specific files:
24+
- Android: `android/app/src/main/res/values/strings.xml`
25+
- iOS: Open `ios/Runner.xcworkspace` and update display name
26+
27+
## 4. Firebase Configuration
28+
29+
- Create a new Firebase project in Firebase console
30+
- Enable Authentication, Firestore, and Crashlytics
31+
- Use `flutterfire configure` to connect the project to your app
32+
- This will generate/update:
33+
- `lib/firebase_options.dart`
34+
- `android/app/google-services.json`
35+
- `ios/Runner/GoogleService-Info.plist`
36+
37+
## 5. Platform-Specific Setup
38+
39+
### iOS Setup
40+
41+
```bash
42+
flutter pub run ios:setup
43+
```
44+
45+
### Android Setup
46+
47+
- Verify `android/app/google-services.json` is properly configured
48+
- Update app icon and splash screen if needed
49+
50+
## 6. Revenue Cat (Optional)
51+
52+
If using the paywall feature:
53+
54+
- Create a RevenueCat account
55+
- Configure your products and entitlements
56+
- Update the RevenueCat API keys in your environment variables
57+
58+
## 7. Environment Configuration
59+
60+
- Create `.env` file for environment variables
61+
- Configure development vs production settings
62+
- Update theme colors and branding in `lib/src/app/theme/`
63+
64+
## 8. Final Verification
65+
66+
```bash
67+
# Run analysis and tests
68+
flutter pub run setup:verify
69+
70+
# Test on both platforms
71+
flutter run
72+
```
73+
74+
## 9. Version Control
75+
76+
- Update this README with project-specific information
77+
- Remove template-specific content
78+
- Set up your Git repository and make initial commit

pubspec.yaml

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -64,29 +64,18 @@ flutter:
6464
- assets/images/
6565
- assets/images/logos/
6666

67-
# Development scripts for cross-platform consistency
6867
scripts:
68+
# New project setup
69+
setup:new: flutter clean && flutter pub get && dart run build_runner build --delete-conflicting-outputs
70+
setup:full: flutter clean && flutter pub get && dart run build_runner build --delete-conflicting-outputs && cd ios && pod install --repo-update
71+
setup:verify: flutter analyze && flutter test
72+
73+
# Package management
74+
change:package: dart run change_app_package_name:main
75+
6976
# Code generation
7077
generate: dart run build_runner build --delete-conflicting-outputs
7178
generate:watch: dart run build_runner watch --delete-conflicting-outputs
72-
generate:clean: dart run build_runner clean
73-
74-
# Testing
75-
test: flutter test
76-
test:coverage: flutter test --coverage
77-
78-
# Analysis and linting
79-
analyze: flutter analyze
80-
format: dart format lib/ test/
81-
format:check: dart format --set-exit-if-changed lib/ test/
82-
83-
# iOS specific
84-
ios:pods: cd ios && pod install --repo-update
85-
ios:clean: cd ios && pod deintegrate && pod install
86-
87-
# Android specific
88-
android:clean: cd android && ./gradlew clean
8979

90-
# Full clean and setup
91-
setup: flutter clean && flutter pub get && dart run build_runner build --delete-conflicting-outputs
92-
fresh: flutter clean && flutter pub get && dart run build_runner build --delete-conflicting-outputs && cd ios && pod install
80+
# Platform setup
81+
ios:setup: cd ios && pod install --repo-update

0 commit comments

Comments
 (0)