create-ern-boilerplate 0.0.30 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +185 -72
  2. package/create.js +40 -23
  3. package/package.json +1 -1
  4. package/templates/advanced/package.json +4 -13
  5. package/templates/agent-generator/AI_GUIDE.md +319 -0
  6. package/templates/agent-generator/CONVENTIONS.md +339 -0
  7. package/templates/agent-generator/GENERATE_RULES.md +343 -0
  8. package/templates/agent-generator/README.md +288 -0
  9. package/templates/agent-generator/ai-context.json +14 -0
  10. package/templates/agent-generator/app/(auth)/_layout.tsx +17 -0
  11. package/templates/agent-generator/app/(auth)/login.tsx +89 -0
  12. package/templates/agent-generator/app/(auth)/register.tsx +102 -0
  13. package/templates/agent-generator/app/(tabs)/_layout.tsx +47 -0
  14. package/templates/agent-generator/app/(tabs)/index.tsx +46 -0
  15. package/templates/agent-generator/app/(tabs)/settings.tsx +71 -0
  16. package/templates/agent-generator/app/_layout.tsx +27 -0
  17. package/templates/agent-generator/app.json +58 -0
  18. package/templates/agent-generator/app.prod.json +60 -0
  19. package/templates/agent-generator/app.staging.json +60 -0
  20. package/templates/agent-generator/babel.config.js +29 -0
  21. package/templates/agent-generator/eas.json +42 -0
  22. package/templates/agent-generator/examples/component.example.tsx +91 -0
  23. package/templates/agent-generator/examples/hook.example.ts +133 -0
  24. package/templates/agent-generator/examples/screen.example.tsx +138 -0
  25. package/templates/agent-generator/examples/service.example.ts +152 -0
  26. package/templates/agent-generator/global.css +3 -0
  27. package/templates/agent-generator/metro.config.js +9 -0
  28. package/templates/agent-generator/nativewind-env.d.ts +3 -0
  29. package/templates/agent-generator/package.json +94 -0
  30. package/templates/agent-generator/server/db.json +0 -0
  31. package/templates/agent-generator/src/assets/images/adaptive-icon.png +0 -0
  32. package/templates/agent-generator/src/assets/images/favicon.png +0 -0
  33. package/templates/agent-generator/src/assets/images/icon.png +0 -0
  34. package/templates/agent-generator/src/assets/images/splash-icon.png +0 -0
  35. package/templates/agent-generator/src/components/auth/ProtectedRoute.tsx +105 -0
  36. package/templates/agent-generator/src/components/common/Button.tsx +70 -0
  37. package/templates/agent-generator/src/components/common/Card.tsx +32 -0
  38. package/templates/agent-generator/src/components/common/Input.tsx +75 -0
  39. package/templates/agent-generator/src/components/common/Loading.tsx +41 -0
  40. package/templates/agent-generator/src/components/config/ToastConfig.tsx +109 -0
  41. package/templates/agent-generator/src/components/shared/ConfirmDialog.tsx +151 -0
  42. package/templates/agent-generator/src/components/shared/FormInput.tsx +67 -0
  43. package/templates/agent-generator/src/components/shared/LucideIcon.tsx +18 -0
  44. package/templates/agent-generator/src/components/shared/RoleSelector.tsx +63 -0
  45. package/templates/agent-generator/src/hooks/useAuth.ts +12 -0
  46. package/templates/agent-generator/src/hooks/useTheme.ts +12 -0
  47. package/templates/agent-generator/src/services/api.ts +97 -0
  48. package/templates/agent-generator/src/services/authService.ts +45 -0
  49. package/templates/agent-generator/src/services/mockApi/auth.mock.ts +89 -0
  50. package/templates/agent-generator/src/services/mockApi/categories.mock.ts +75 -0
  51. package/templates/agent-generator/src/services/mockApi/index.ts +79 -0
  52. package/templates/agent-generator/src/services/mockApi/products.mock.ts +125 -0
  53. package/templates/agent-generator/src/services/mockApi/users.mock.ts +83 -0
  54. package/templates/agent-generator/src/store/authStore.ts +45 -0
  55. package/templates/agent-generator/src/store/themeStore.ts +20 -0
  56. package/templates/agent-generator/src/theme/colors.ts +32 -0
  57. package/templates/agent-generator/src/types/api.types.ts +28 -0
  58. package/templates/agent-generator/src/types/auth.types.ts +38 -0
  59. package/templates/agent-generator/src/types/product.types.ts +49 -0
  60. package/templates/agent-generator/src/types/user.types.ts +40 -0
  61. package/templates/agent-generator/src/utils/constants.ts +48 -0
  62. package/templates/agent-generator/src/utils/storage.ts +73 -0
  63. package/templates/agent-generator/src/utils/validation.ts +54 -0
  64. package/templates/agent-generator/tailwind.config.js +33 -0
  65. package/templates/agent-generator/tsconfig.json +35 -0
  66. package/templates/simple/.claude/settings.local.json +11 -0
  67. package/templates/simple/.clinerules +446 -0
  68. package/templates/simple/.env.example +44 -0
  69. package/templates/simple/.prettierrc +13 -0
  70. package/templates/simple/AI_DEVELOPMENT_GUIDE.md +709 -0
  71. package/templates/simple/AI_QUICK_START.md +245 -0
  72. package/templates/simple/ARCHITECTURE.md +754 -0
  73. package/templates/simple/CHANGELOG.md +313 -0
  74. package/templates/simple/COMPONENT_TEMPLATES.md +761 -0
  75. package/templates/simple/EXAMPLES.md +1132 -0
  76. package/templates/simple/IMPROVEMENTS_SUMMARY.md +399 -0
  77. package/templates/simple/PROJECT_CONTEXT.md +399 -0
  78. package/templates/simple/README.md +438 -0
  79. package/templates/simple/app/(admin)/_layout.tsx +51 -0
  80. package/templates/simple/app/(admin)/profile.tsx +589 -0
  81. package/templates/simple/app/(admin)/user-management.tsx +604 -0
  82. package/templates/simple/app/(auth)/_layout.tsx +25 -0
  83. package/templates/simple/app/(auth)/login.tsx +782 -0
  84. package/templates/simple/app/(auth)/register.tsx +547 -0
  85. package/templates/simple/app/(protected)/_layout.tsx +91 -0
  86. package/templates/simple/app/(protected)/home.tsx +665 -0
  87. package/templates/simple/app/(protected)/settings.tsx +332 -0
  88. package/templates/simple/app/README.md +439 -0
  89. package/templates/simple/app/_SCREEN_TEMPLATE.tsx +311 -0
  90. package/templates/simple/app/_layout.tsx +24 -0
  91. package/templates/simple/app.json +58 -0
  92. package/templates/simple/app.prod.json +60 -0
  93. package/templates/simple/app.staging.json +60 -0
  94. package/templates/simple/babel.config.js +29 -0
  95. package/templates/simple/eas.json +42 -0
  96. package/templates/simple/global.css +3 -0
  97. package/templates/simple/metro.config.js +9 -0
  98. package/templates/simple/nativewind-env.d.ts +3 -0
  99. package/templates/simple/package.json +101 -0
  100. package/templates/simple/server/db.json +78 -0
  101. package/templates/simple/setup.sh +158 -0
  102. package/templates/simple/src/assets/images/adaptive-icon.png +0 -0
  103. package/templates/simple/src/assets/images/favicon.png +0 -0
  104. package/templates/simple/src/assets/images/icon.png +0 -0
  105. package/templates/simple/src/assets/images/splash-icon.png +0 -0
  106. package/templates/simple/src/components/auth/ProtectedRoute.tsx +105 -0
  107. package/templates/simple/src/components/common/Button.tsx +70 -0
  108. package/templates/simple/src/components/common/Card.tsx +32 -0
  109. package/templates/simple/src/components/common/ErrorBoundary.tsx +167 -0
  110. package/templates/simple/src/components/common/Input.tsx +75 -0
  111. package/templates/simple/src/components/common/Loading.tsx +41 -0
  112. package/templates/simple/src/components/config/ToastConfig.tsx +109 -0
  113. package/templates/simple/src/components/header/AppHeader.tsx +160 -0
  114. package/templates/simple/src/components/shared/ConfirmDialog.tsx +151 -0
  115. package/templates/simple/src/components/shared/FormInput.tsx +67 -0
  116. package/templates/simple/src/components/shared/LucideIcon.tsx +18 -0
  117. package/templates/simple/src/components/shared/RoleSelector.tsx +63 -0
  118. package/templates/simple/src/components/users/EmptyState.tsx +70 -0
  119. package/templates/simple/src/components/users/ErrorState.tsx +64 -0
  120. package/templates/simple/src/components/users/FilterModal.tsx +264 -0
  121. package/templates/simple/src/components/users/UserCard.tsx +230 -0
  122. package/templates/simple/src/components/users/UserFormModal.tsx +230 -0
  123. package/templates/simple/src/contexts/AuthContext.tsx +93 -0
  124. package/templates/simple/src/contexts/ThemeContext.tsx +56 -0
  125. package/templates/simple/src/hooks/useAuth.ts +12 -0
  126. package/templates/simple/src/hooks/useTheme.ts +12 -0
  127. package/templates/simple/src/hooks/useUsers.ts +261 -0
  128. package/templates/simple/src/services/api.ts +97 -0
  129. package/templates/simple/src/services/authService.ts +45 -0
  130. package/templates/simple/src/services/mockApi/auth.mock.ts +89 -0
  131. package/templates/simple/src/services/mockApi/categories.mock.ts +75 -0
  132. package/templates/simple/src/services/mockApi/index.ts +79 -0
  133. package/templates/simple/src/services/mockApi/products.mock.ts +125 -0
  134. package/templates/simple/src/services/mockApi/users.mock.ts +83 -0
  135. package/templates/simple/src/services/productService.ts +143 -0
  136. package/templates/simple/src/services/userService.ts +49 -0
  137. package/templates/simple/src/theme/colors.ts +32 -0
  138. package/templates/simple/src/types/api.types.ts +28 -0
  139. package/templates/simple/src/types/auth.types.ts +42 -0
  140. package/templates/simple/src/types/product.types.ts +49 -0
  141. package/templates/simple/src/types/user.types.ts +40 -0
  142. package/templates/simple/src/utils/constants.ts +48 -0
  143. package/templates/simple/src/utils/routes.ts +75 -0
  144. package/templates/simple/src/utils/storage.ts +73 -0
  145. package/templates/simple/src/utils/validation.ts +54 -0
  146. package/templates/simple/tailwind.config.js +33 -0
  147. package/templates/simple/tsconfig.json +35 -0
package/README.md CHANGED
@@ -1,51 +1,69 @@
1
1
  # šŸš€ create-ern-boilerplate
2
2
 
3
- CLI untuk membuat proyek **React Native Expo** dengan cepat menggunakan berbagai template yang sudah disiapkan.
3
+ **Generator boilerplate Expo React Native yang powerful dan mudah digunakan!**
4
4
 
5
- Dengan alat ini, kamu bisa membuat project baru hanya dalam hitungan detik — baik secara interaktif maupun langsung (tanpa prompt).
5
+ Buat proyek **React Native Expo** production-ready dalam hitungan detik dengan berbagai template siap pakai. Tidak perlu instalasi, langsung pakai dengan **npx**!
6
6
 
7
7
  ---
8
8
 
9
- ## šŸ“¦ Instalasi
9
+ ## ✨ Apa itu create-ern-boilerplate?
10
10
 
11
- Kamu **tidak perlu menginstal package ini secara global**.
12
- Cukup jalankan menggunakan **npx**:
11
+ `create-ern-boilerplate` adalah CLI tool yang membantu kamu membuat project Expo React Native dengan cepat menggunakan template yang sudah dikonfigurasi dengan baik.
12
+
13
+ āœ… **Tidak perlu instalasi global** - langsung pakai dengan npx
14
+ āœ… **Mode interaktif** - pilih template dan konfigurasi dengan mudah
15
+ āœ… **Mode cepat** - buat project dalam satu baris perintah
16
+ āœ… **Berbagai template** - minimal, redux, dan lainnya
17
+ āœ… **Auto setup** - nama project, bundle identifier, dan dependencies otomatis terkonfigurasi
18
+
19
+ ---
20
+
21
+ ## šŸš€ Quick Start
22
+
23
+ Cara tercepat untuk membuat project baru:
13
24
 
14
25
  ```bash
15
- npx create-ern-boilerplate
26
+ npx create-ern-boilerplate my-app -y
16
27
  ```
17
28
 
18
- ---
29
+ Atau gunakan alias yang lebih pendek:
30
+
31
+ ```bash
32
+ npx ern-boilerplate my-app -y
33
+ ```
19
34
 
20
- ## 🧠 Contoh Penggunaan
35
+ Selesai! Project kamu sudah siap dengan template default dan dependencies sudah terinstall.
21
36
 
22
- ### 🟢 1. Mode Interaktif (Default)
37
+ ### 🟢 Mode Interaktif (Direkomendasikan untuk pemula)
23
38
 
24
- Jalankan tanpa argumen tambahan:
39
+ Jalankan tanpa argumen untuk memilih konfigurasi secara interaktif:
25
40
 
26
41
  ```bash
27
42
  npx create-ern-boilerplate
28
43
  ```
29
44
 
30
45
  Kamu akan ditanya:
46
+ - āœļø Nama project
47
+ - šŸ“ Deskripsi project
48
+ - šŸŽØ Template yang ingin digunakan
49
+ - āš™ļø Apakah ingin langsung install dependencies
31
50
 
32
- - Nama project
33
- - Deskripsi
34
- - Template yang ingin digunakan
35
- - Apakah ingin langsung install dependencies
36
-
37
- **Contoh:**
51
+ **Contoh interaksi:**
38
52
 
39
53
  ```
40
54
  ? Nama project kamu: my-expo-app
41
55
  ? Deskripsi singkat: Aplikasi keren dengan Expo
42
56
  ? Pilih template: redux
43
57
  ? Langsung install dependencies setelah membuat project? Yes
58
+
59
+ ✨ Membuat project my-expo-app...
60
+ šŸ“¦ Menginstall dependencies...
61
+ āœ… Project berhasil dibuat!
44
62
  ```
45
63
 
46
64
  ---
47
65
 
48
- ### 🟔 2. Mode Cepat (Tanpa Prompt)
66
+ ### 🟔 Mode Cepat (Direkomendasikan untuk yang sudah familiar)
49
67
 
50
68
  Langsung buat project baru tanpa pertanyaan:
51
69
 
@@ -53,119 +71,214 @@ Langsung buat project baru tanpa pertanyaan:
53
71
  npx create-ern-boilerplate my-app -y
54
72
  ```
55
73
 
56
- āœ… Otomatis pakai **template default (`minimal`)**
57
- āœ… Langsung install dependencies
74
+ Atau dengan alias pendek:
75
+
76
+ ```bash
77
+ npx ern-boilerplate my-app -y
78
+ ```
79
+
80
+ Hasilnya:
81
+ - āœ… Otomatis pakai **template default (`minimal`)**
82
+ - āœ… Dependencies langsung terinstall
83
+ - āœ… Siap untuk development
58
84
 
59
85
  ---
60
86
 
61
- ### šŸ”µ 3. Mode Cepat + Custom Deskripsi + Template
87
+ ### šŸ”µ Mode Kustom (Full control)
62
88
 
63
- Kamu bisa langsung menentukan deskripsi dan template yang digunakan:
89
+ Tentukan semua konfigurasi langsung di command line:
64
90
 
65
91
  ```bash
66
92
  npx create-ern-boilerplate my-app -y --desc "Boilerplate lengkap" --template redux
67
93
  ```
68
94
 
69
- šŸ“ Akan langsung generate project **my-app**
70
- šŸ“„ Isi deskripsi otomatis
71
- 🧩 Menggunakan template **redux**
72
- āš™ļø Auto install dependencies
95
+ Atau dengan alias:
96
+
97
+ ```bash
98
+ npx ern-boilerplate my-app -y --desc "Boilerplate lengkap" --template redux
99
+ ```
100
+
101
+ Hasilnya:
102
+ - šŸ“ Project **my-app** langsung terbuat
103
+ - šŸ“„ Deskripsi otomatis terisi
104
+ - 🧩 Menggunakan template **redux**
105
+ - āš™ļø Dependencies auto install
73
106
 
74
107
  ---
75
108
 
76
109
  ## āš™ļø Argumen & Opsi CLI
77
110
 
78
- | Opsi | Alias | Deskripsi | Contoh |
79
- |------|--------|------------|--------|
80
- | `-y` / `--yes` | | Jalankan mode cepat tanpa prompt | `npx create-ern-boilerplate my-app -y` |
81
- | `--desc` | | Tambahkan deskripsi project | `--desc "Aplikasi keren"` |
82
- | `--template` | | Pilih template tertentu | `--template redux` |
83
- | `--install` | | Auto install dependencies di mode cepat | `-y --install` |
111
+ ### Command yang tersedia:
84
112
 
85
- ---
113
+ ```bash
114
+ npx create-ern-boilerplate [nama-project] [opsi]
115
+ # atau
116
+ npx ern-boilerplate [nama-project] [opsi]
117
+ ```
86
118
 
87
- ## 🧩 Struktur Template
119
+ ### Opsi yang tersedia:
88
120
 
89
- Semua template disimpan di folder:
121
+ | Opsi | Deskripsi | Default | Contoh |
122
+ |------|-----------|---------|--------|
123
+ | `[nama-project]` | Nama project yang akan dibuat | Akan ditanyakan jika tidak diisi | `my-app` |
124
+ | `-y`, `--yes` | Mode cepat tanpa prompt | `false` | `npx create-ern-boilerplate my-app -y` |
125
+ | `--desc <text>` | Deskripsi project | `""` | `--desc "Aplikasi keren"` |
126
+ | `--template <name>` | Pilih template tertentu | `minimal` | `--template redux` |
127
+ | `--install` | Auto install dependencies | `true` saat `-y` | `-y --install` |
90
128
 
129
+ ### Contoh kombinasi:
130
+
131
+ ```bash
132
+ # Hanya nama project
133
+ npx create-ern-boilerplate my-app
134
+
135
+ # Mode cepat
136
+ npx ern-boilerplate my-app -y
137
+
138
+ # Custom template
139
+ npx create-ern-boilerplate my-app -y --template redux
140
+
141
+ # Full custom
142
+ npx ern-boilerplate my-app -y --desc "My awesome app" --template redux
91
143
  ```
92
- /templates
93
- ā”œā”€ā”€ minimal
94
- ā”œā”€ā”€ redux
95
- ā”œā”€ā”€ default
96
- └── ...
97
- ```
98
144
 
99
- Kamu dapat menambahkan template baru cukup dengan menambahkan folder baru di dalam direktori `templates`.
145
+ ---
146
+
147
+ ## 🧩 Template yang Tersedia
148
+
149
+ Saat ini tersedia beberapa template siap pakai:
150
+
151
+ | Template | Deskripsi | Cocok untuk |
152
+ |----------|-----------|-------------|
153
+ | `minimal` | Template dasar dengan struktur minimalis | Project sederhana, prototyping cepat |
154
+ | `redux` | Lengkap dengan Redux state management | Aplikasi kompleks dengan state management |
155
+ | `default` | Template standar dengan setup umum | Kebanyakan project |
156
+
157
+ ### Cara menggunakan template:
158
+
159
+ ```bash
160
+ # Template minimal (default)
161
+ npx create-ern-boilerplate my-app -y
162
+
163
+ # Template redux
164
+ npx create-ern-boilerplate my-app -y --template redux
165
+
166
+ # Template default
167
+ npx create-ern-boilerplate my-app -y --template default
168
+ ```
100
169
 
101
170
  ---
102
171
 
103
- ## šŸ› ļø Cara Kerja
172
+ ## šŸ› ļø Apa yang Terjadi di Balik Layar?
173
+
174
+ Saat kamu menjalankan `npx create-ern-boilerplate`, ini yang terjadi:
104
175
 
105
- 1. CLI membaca argumen dari perintah yang kamu jalankan.
106
- 2. Jika mode interaktif: akan menampilkan prompt dengan `inquirer`.
107
- 3. Template yang dipilih akan disalin ke folder project baru.
108
- 4. `package.json` dan `app.json` akan di-update otomatis:
109
- - Nama project
110
- - Deskripsi
111
- - Bundle identifier (iOS / Android)
112
- 5. Jika dipilih, dependencies akan langsung diinstall.
176
+ 1. **šŸ“„ npx mengunduh package terbaru** - Tidak perlu install, npx otomatis download versi terbaru
177
+ 2. **āš™ļø CLI membaca argumen** - Memproses command dan opsi yang kamu berikan
178
+ 3. **šŸ’¬ Mode interaktif (opsional)** - Menampilkan prompt jika kamu tidak pakai flag `-y`
179
+ 4. **šŸ“‹ Copy template** - Template yang dipilih disalin ke folder project baru
180
+ 5. **āœļø Auto-configure** - Update `package.json` dan `app.json` dengan:
181
+ - Nama project kamu
182
+ - Deskripsi project
183
+ - Bundle identifier untuk iOS & Android
184
+ 6. **šŸ“¦ Install dependencies** - npm install otomatis dijalankan
185
+ 7. **āœ… Selesai!** - Project siap untuk development
113
186
 
114
187
  ---
115
188
 
116
- ## 🧾 Contoh Hasil
189
+ ## šŸŽÆ Hasil Akhir
117
190
 
118
191
  Setelah menjalankan perintah:
119
192
 
120
193
  ```bash
121
- npx create-ern-boilerplate my-expo-app -y --desc "Boilerplate lengkap" --template redux
194
+ npx create-ern-boilerplate my-expo-app -y --template redux
122
195
  ```
123
196
 
124
- CLI akan menghasilkan struktur seperti:
197
+ Kamu akan mendapatkan struktur project seperti ini:
125
198
 
126
199
  ```
127
200
  my-expo-app/
128
- ā”œā”€ā”€ app.json
129
- ā”œā”€ā”€ package.json
130
- ā”œā”€ā”€ App.js
131
- ā”œā”€ā”€ src/
132
- │ ā”œā”€ā”€ components/
133
- │ ā”œā”€ā”€ screens/
134
- │ ā”œā”€ā”€ redux/
201
+ ā”œā”€ā”€ šŸ“± app.json # Konfigurasi Expo
202
+ ā”œā”€ā”€ šŸ“¦ package.json # Dependencies & scripts
203
+ ā”œā”€ā”€ šŸš€ App.js # Entry point aplikasi
204
+ ā”œā”€ā”€ šŸ“ src/
205
+ │ ā”œā”€ā”€ components/ # React components
206
+ │ ā”œā”€ā”€ screens/ # Screen components
207
+ │ ā”œā”€ā”€ redux/ # Redux store & slices
135
208
  │ └── ...
136
209
  └── ...
137
210
  ```
138
211
 
139
- Dan kamu bisa langsung menjalankan:
212
+ ### Langkah selanjutnya:
140
213
 
141
214
  ```bash
215
+ # Masuk ke folder project
142
216
  cd my-expo-app
143
- npm run start
217
+
218
+ # Jalankan development server
219
+ npm start
220
+
221
+ # Atau langsung ke iOS/Android
222
+ npm run ios
223
+ npm run android
144
224
  ```
145
225
 
146
226
  ---
147
227
 
228
+ ## šŸ’” Tips & Best Practices
148
229
 
149
- ---
230
+ ### Untuk pengguna baru:
231
+ - šŸŽÆ Mulai dengan mode interaktif terlebih dahulu: `npx create-ern-boilerplate`
232
+ - šŸ“š Gunakan template `minimal` untuk belajar struktur dasar
233
+ - šŸ” Eksplorasi file yang di-generate untuk memahami setup-nya
150
234
 
151
- ## šŸ’” Tips
235
+ ### Untuk pengguna berpengalaman:
236
+ - ⚔ Gunakan alias pendek: `npx ern-boilerplate my-app -y`
237
+ - šŸŽØ Kombinasikan dengan opsi custom untuk workflow lebih cepat
238
+ - šŸ”§ Template `redux` cocok untuk aplikasi dengan state management kompleks
152
239
 
153
- - Jalankan `--template` dengan nama folder template yang tersedia.
154
- - Tambahkan flag `--install` untuk auto install di mode cepat.
155
- - Kamu bisa menambahkan template buatan sendiri di folder `templates`.
240
+ ### Performa:
241
+ - ✨ npx selalu menggunakan versi terbaru dari registry
242
+ - šŸš€ Gunakan flag `-y` untuk skip semua prompt
243
+ - šŸ“¦ Dependencies otomatis terinstall saat menggunakan `-y`
156
244
 
157
245
  ---
158
246
 
247
+ ## šŸ¤ Kontribusi
248
+
249
+ Ingin menambahkan template atau fitur baru? Contributions are welcome!
250
+
251
+ 1. Fork repository ini
252
+ 2. Buat branch baru untuk fitur kamu
253
+ 3. Commit perubahan kamu
254
+ 4. Push ke branch
255
+ 5. Buat Pull Request
256
+
159
257
  ---
160
258
 
161
- ## 🪪 Lisensi
259
+ ## šŸ“ Lisensi
162
260
 
163
261
  Lisensi: [MIT](./LICENSE)
164
262
 
165
263
  ---
166
264
 
167
- ## šŸ’¬ Penulis
265
+ ## šŸ’¬ Author
266
+
267
+ Dibuat dengan ā¤ļø oleh **Zedfar**
268
+
269
+ - šŸ“§ Email: ulfar.far@gmail.com
270
+ - šŸ™ GitHub: [@zedfar](https://github.com/zedfar)
271
+ - šŸ“¦ NPM: [create-ern-boilerplate](https://www.npmjs.com/package/create-ern-boilerplate)
272
+
273
+ ---
274
+
275
+ ## 🌟 Support
276
+
277
+ Jika tool ini membantu kamu, jangan lupa:
278
+ - ⭐ Star repository ini
279
+ - šŸ› Report bugs atau request fitur via [Issues](https://github.com/zedfar/create-ern-boilerplate/issues)
280
+ - šŸ¤ Contribute dengan Pull Request
281
+
282
+ ---
168
283
 
169
- Dibuat dengan ā¤ļø oleh **[Zedfar]**
170
- šŸ“§ Kontak: ulfar.far@gmail.com
171
- šŸ™ GitHub: [@zedfar](https://github.com/zedfar)
284
+ **Happy Coding! šŸš€**
package/create.js CHANGED
@@ -198,29 +198,46 @@ async function main() {
198
198
  }
199
199
 
200
200
  console.log(`
201
- ${chalk.green("šŸŽ‰ Selesai!")}
202
- Langkah selanjutnya:
203
- ${chalk.cyan(`boilerplate ${projectName} berhasil dibuat`)}
204
- ${autoInstall
205
- ? chalk.dim("(dependencies sudah terinstall āœ…)")
206
- : chalk.cyan("")
201
+ ${chalk.green("šŸŽ‰ Selesai!")}
202
+ Boilerplate berhasil dibuat untuk project: ${chalk.cyan(projectName)}
203
+
204
+ ${autoInstall
205
+ ? chalk.dim("šŸ“¦ Dependencies sudah terinstall otomatis āœ…")
206
+ : chalk.yellow("šŸ“¦ Jalankan 'npm install' sebelum mulai coding")
207
207
  }
208
- ${chalk.cyan("silahkan mulai code berdasarkan kebutuhan anda")}
209
208
 
210
- Happy coding! šŸ’»
209
+ ${chalk.cyan("Sebelum mulai mengembangkan fitur, sangat disarankan mengikuti urutan bacaan berikut untuk memahami alur project dan AI workflow.")}
210
+
211
+ ${chalk.bold("\nšŸ“– READING ORDER (Urutan Baca yang Direkomendasikan):\n")}
212
+
213
+ 1. ⭐ AI_GUIDE.md
214
+ ${chalk.dim("# START HERE — onboarding & cara kerja AI")}
215
+ 2. šŸ“ ai-context.json
216
+ ${chalk.dim("# Path mappings & context")}
217
+ 3. šŸ“‹ GENERATE_RULES.md
218
+ ${chalk.dim("# Pola pembuatan kode")}
219
+ 4. šŸ“ CONVENTIONS.md
220
+ ${chalk.dim("# Standar coding")}
221
+ 5. šŸ’” examples/
222
+ ${chalk.dim("# Contoh kode siap pakai")}
223
+ 6. šŸ“– README.md
224
+ ${chalk.dim("# Gambaran umum project")}
225
+
226
+ ${chalk.green("Happy coding! šŸ’»")}
211
227
  `);
212
- }
213
-
214
- // === Helper untuk menampilkan daftar template ===
215
- async function getTemplateChoices() {
216
- const templatesDir = path.join(__dirname, "templates");
217
- const folders = await fs.readdir(templatesDir);
218
- return folders.filter((f) =>
219
- fs.statSync(path.join(templatesDir, f)).isDirectory()
220
- );
221
- }
222
-
223
- main().catch((err) => {
224
- console.error(chalk.red("Terjadi kesalahan:"), err);
225
- process.exit(1);
226
- });
228
+
229
+
230
+
231
+ // === Helper untuk menampilkan daftar template ===
232
+ async function getTemplateChoices() {
233
+ const templatesDir = path.join(__dirname, "templates");
234
+ const folders = await fs.readdir(templatesDir);
235
+ return folders.filter((f) =>
236
+ fs.statSync(path.join(templatesDir, f)).isDirectory()
237
+ );
238
+ }
239
+
240
+ main().catch((err) => {
241
+ console.error(chalk.red("Terjadi kesalahan:"), err);
242
+ process.exit(1);
243
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-ern-boilerplate",
3
- "version": "0.0.30",
3
+ "version": "0.0.31",
4
4
  "description": "Expo React Native boilerplate generator",
5
5
  "bin": {
6
6
  "create-ern-boilerplate": "./create.js",
@@ -74,7 +74,8 @@
74
74
  "react-native-web": "^0.21.0",
75
75
  "react-native-webview": "13.15.0",
76
76
  "react-native-worklets": "0.5.1",
77
- "zustand": "^5.0.0"
77
+ "zustand": "^5.0.0",
78
+ "expo-checkbox": "~5.0.7"
78
79
  },
79
80
  "devDependencies": {
80
81
  "@babel/core": "^7.26.0",
@@ -89,15 +90,5 @@
89
90
  "tailwindcss": "^3.4.13",
90
91
  "typescript": "~5.9.2"
91
92
  },
92
- "private": true,
93
- "expo": {
94
- "install": {
95
- "exclude": [
96
- "react",
97
- "expo",
98
- "expo-constants",
99
- "react-native"
100
- ]
101
- }
102
- }
103
- }
93
+ "private": true
94
+ }