native-update 1.3.5 → 1.3.7

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.
package/Readme.md CHANGED
@@ -20,6 +20,13 @@
20
20
  - **[Installation Guide](./docs/getting-started/installation.md)** - Step-by-step installation instructions
21
21
  - **[Quick Start Guide](./docs/getting-started/quick-start.md)** - Get up and running in minutes
22
22
  - **[Configuration Guide](./docs/getting-started/configuration.md)** - Detailed configuration options
23
+ - **[End-to-End Workflow](./docs/guides/end-to-end-workflow.md)** - Complete setup to production guide
24
+
25
+ ### Dashboard & Management
26
+
27
+ - **[Dashboard Guide](./docs/guides/dashboard-guide.md)** - Complete dashboard user guide
28
+ - **[Channel Management](./docs/guides/channel-management.md)** - Dev/staging/production channels
29
+ - **[Admin Panel](./docs/guides/admin-panel.md)** - Super-admin documentation
23
30
 
24
31
  ### Features Documentation
25
32
 
@@ -31,9 +38,11 @@
31
38
  ### Guides & Best Practices
32
39
 
33
40
  - **[Security Best Practices](./docs/guides/security-best-practices.md)** - Implement secure updates
41
+ - **[Deployment Guide](./docs/guides/deployment-guide.md)** - Deployment procedures
34
42
  - **[Migration Guide](./docs/MIGRATION.md)** - Migrate from other solutions
35
43
  - **[Production Readiness](./docs/production-readiness.md)** - Production deployment checklist
36
44
  - **[Bundle Signing](./docs/BUNDLE_SIGNING.md)** - Cryptographic signing guide
45
+ - **[Troubleshooting](./docs/guides/troubleshooting.md)** - Common issues and solutions
37
46
 
38
47
  ### API Reference
39
48
 
@@ -52,6 +61,36 @@
52
61
 
53
62
  A **foundation package** for building a comprehensive update management plugin for Capacitor that combines Live/OTA updates, native app store updates, and in-app review capabilities. This package provides the architecture, interfaces, and documentation but requires additional implementation work.
54
63
 
64
+ ## 🌐 Dashboard & Management Platform
65
+
66
+ The Native Update platform includes a complete web dashboard for managing your updates:
67
+
68
+ **Dashboard URL**: [nativeupdate.aoneahsan.com](https://nativeupdate.aoneahsan.com)
69
+
70
+ ### Dashboard Features
71
+
72
+ - **App Management**: Register and configure multiple apps
73
+ - **Build Uploads**: Upload and manage build versions
74
+ - **Channel Management**: Configure production/staging/development channels
75
+ - **Rollouts**: Gradual rollout with percentage control
76
+ - **Analytics**: Track downloads, installs, errors, and rollbacks
77
+ - **Google Drive Integration**: Secure build storage
78
+ - **Configuration Generator**: Get ready-to-use integration code
79
+
80
+ ### Update Channels
81
+
82
+ Native Update supports three deployment channels:
83
+
84
+ | Channel | Purpose | Auto-Update | Check Interval |
85
+ |---------|---------|-------------|----------------|
86
+ | **Development** | Internal testing | Yes | 1 minute |
87
+ | **Staging** | QA/Beta testing | Configurable | 1 hour |
88
+ | **Production** | Live users | No (consent) | Daily |
89
+
90
+ See [Channel Management Guide](./docs/guides/channel-management.md) for detailed configuration.
91
+
92
+ ---
93
+
55
94
  ## Features
56
95
 
57
96
  ### 🚀 Live Updates (OTA)
@@ -85,7 +124,7 @@ Increase user engagement with intelligent review prompts:
85
124
  ## Installation
86
125
 
87
126
  ```bash
88
- npm install native-update
127
+ yarn add native-update
89
128
  npx cap sync
90
129
  ```
91
130
 
@@ -76,7 +76,7 @@ The App Review feature allows users to rate and review your app without leaving
76
76
  ### Installation
77
77
 
78
78
  ```bash
79
- npm install native-update
79
+ yarn add native-update
80
80
  npx cap sync
81
81
  ```
82
82
 
@@ -69,7 +69,7 @@ sequenceDiagram
69
69
  ### 1. Install the Plugin
70
70
 
71
71
  ```bash
72
- npm install native-update
72
+ yarn add native-update
73
73
  npx cap sync
74
74
  ```
75
75
 
@@ -329,7 +329,7 @@ export class UpdateStrategies {
329
329
 
330
330
  ```bash
331
331
  cd server-example
332
- npm install
332
+ yarn install
333
333
  npm start
334
334
  ```
335
335
 
@@ -389,7 +389,7 @@ Response:
389
389
 
390
390
  ```bash
391
391
  # 1. Build your web app
392
- npm run build
392
+ yarn build
393
393
 
394
394
  # 2. Create bundle
395
395
  cd dist
@@ -61,7 +61,7 @@ Native App Updates allow your app to:
61
61
  ### Installation
62
62
 
63
63
  ```bash
64
- npm install native-update
64
+ yarn add native-update
65
65
  npx cap sync
66
66
  ```
67
67
 
package/docs/README.md CHANGED
@@ -1,14 +1,15 @@
1
1
  # Capacitor Native Update - Documentation
2
2
 
3
- > ⚠️ **IMPORTANT: Backend Infrastructure Required** ⚠️
4
- >
5
- > This plugin requires you to build your own backend infrastructure including:
6
- > - Update server with API endpoints
7
- > - Bundle storage and CDN
8
- > - Signing and security services
9
- >
3
+ Welcome to the comprehensive documentation for **Capacitor Native Update**, a complete update lifecycle management solution for Capacitor applications.
10
4
 
11
- Welcome to the comprehensive documentation for **Capacitor Native Update**, a foundation plugin that provides architecture for a complete update lifecycle management solution for Capacitor applications.
5
+ > **Dashboard & Management Platform**: [nativeupdate.aoneahsan.com](https://nativeupdate.aoneahsan.com)
6
+ >
7
+ > The platform provides a complete SaaS solution for managing your updates including:
8
+ > - Web dashboard for app and build management
9
+ > - Google Drive integration for secure build storage
10
+ > - Channel management (production/staging/development)
11
+ > - Gradual rollout capabilities
12
+ > - Analytics and monitoring
12
13
 
13
14
  Created by **Ahsan Mahmood** and open-sourced for the developer community, this plugin combines three essential update features:
14
15
 
@@ -23,6 +24,13 @@ Created by **Ahsan Mahmood** and open-sourced for the developer community, this
23
24
  - [**Installation**](./getting-started/installation.md) - How to install and set up the plugin
24
25
  - [**Quick Start**](./getting-started/quick-start.md) - Get up and running in minutes
25
26
  - [**Configuration**](./getting-started/configuration.md) - Detailed configuration options
27
+ - [**End-to-End Workflow**](./guides/end-to-end-workflow.md) - Complete setup to production guide
28
+
29
+ ### Dashboard & Management
30
+
31
+ - [**Dashboard Guide**](./guides/dashboard-guide.md) - Complete dashboard user guide
32
+ - [**Channel Management**](./guides/channel-management.md) - Production/staging/development channels
33
+ - [**Admin Panel**](./guides/admin-panel.md) - Super-admin documentation
26
34
 
27
35
  ### Features
28
36
 
@@ -34,9 +42,10 @@ Created by **Ahsan Mahmood** and open-sourced for the developer community, this
34
42
 
35
43
  - [**Security Best Practices**](./guides/security-best-practices.md) - Implement secure updates
36
44
  - [**Key Management**](./guides/key-management.md) - Generate and manage signing keys
37
- - [**Migration from CodePush**](./guides/migration-from-codepush.md) - Migrate from CodePush
38
- - [**Testing Guide**](./guides/testing-guide.md) - Testing your update implementation
39
45
  - [**Deployment Guide**](./guides/deployment-guide.md) - Deploy to production
46
+ - [**Testing Guide**](./guides/testing-guide.md) - Testing your update implementation
47
+ - [**Troubleshooting**](./guides/troubleshooting.md) - Common issues and solutions
48
+ - [**Migration from CodePush**](./guides/migration-from-codepush.md) - Migrate from CodePush
40
49
 
41
50
  ### API Reference
42
51
 
@@ -11,10 +11,10 @@ The CLI is included with the native-update package. You can use it via npx witho
11
11
  npx native-update <command>
12
12
 
13
13
  # Or install globally
14
- npm install -g native-update
14
+ yarn global add native-update
15
15
 
16
16
  # Or use locally in your project
17
- npm install native-update
17
+ yarn add native-update
18
18
  npx native-update <command>
19
19
  ```
20
20
 
@@ -218,11 +218,11 @@ npx native-update backend create express --with-admin
218
218
 
219
219
  # 4. Start the backend (in another terminal)
220
220
  cd native-update-backend
221
- npm install
222
- npm run dev
221
+ yarn install
222
+ yarn dev
223
223
 
224
224
  # 5. Build your app
225
- npm run build
225
+ yarn build
226
226
 
227
227
  # 6. Create and sign a bundle
228
228
  npx native-update bundle create ./www --version 1.0.1
@@ -292,7 +292,7 @@ chmod 600 ./keys/private-*.pem
292
292
  Ensure your web directory contains built files:
293
293
  ```bash
294
294
  # Build first
295
- npm run build
295
+ yarn build
296
296
 
297
297
  # Then create bundle
298
298
  npx native-update bundle create ./www
@@ -370,7 +370,7 @@ async function getFeatureFlags() {
370
370
 
371
371
  ```bash
372
372
  # Use production builds
373
- npm run build -- --mode production
373
+ yarn build -- --mode production
374
374
 
375
375
  # Enable compression
376
376
  gzip -9 bundle.js
@@ -548,8 +548,8 @@ Set up a local update server for testing:
548
548
  ```bash
549
549
  # See server-example directory
550
550
  cd server-example
551
- npm install
552
- npm run dev
551
+ yarn install
552
+ yarn dev
553
553
  ```
554
554
 
555
555
  ### Test Scenarios
@@ -29,14 +29,6 @@ Before installing the plugin, ensure you have:
29
29
 
30
30
  ### 1. Install the Plugin
31
31
 
32
- Using npm:
33
-
34
- ```bash
35
- npm install native-update
36
- ```
37
-
38
- Using yarn:
39
-
40
32
  ```bash
41
33
  yarn add native-update
42
34
  ```
@@ -267,7 +259,7 @@ import type {
267
259
  ### Common Issues
268
260
 
269
261
  1. **"Module not found" error**
270
- - Run `npm install` or `yarn install` again
262
+ - Run `yarn install` again
271
263
  - Delete `node_modules` and reinstall
272
264
  - Ensure you've run `npx cap sync`
273
265
 
@@ -360,8 +360,8 @@ npx native-update backend create firebase --with-monitoring
360
360
 
361
361
  # Start the development server
362
362
  cd native-update-backend
363
- npm install
364
- npm run dev
363
+ yarn install
364
+ yarn dev
365
365
  ```
366
366
 
367
367
  ### Creating and Deploying Updates
@@ -374,7 +374,7 @@ npm run dev
374
374
 
375
375
  2. **Build and create update bundle**:
376
376
  ```bash
377
- npm run build
377
+ yarn build
378
378
  npx native-update bundle create ./www --version 1.0.1
379
379
  ```
380
380
 
@@ -0,0 +1,268 @@
1
+ # Admin Panel Documentation
2
+
3
+ The Admin Panel provides super-administrator access to manage all users, apps, and builds across the Native Update platform.
4
+
5
+ ## Access Requirements
6
+
7
+ The Admin Panel is only accessible to authorized administrators:
8
+
9
+ - **Admin Email**: `aoneahsan@gmail.com`
10
+ - **URL**: `https://nativeupdate.aoneahsan.com/admin`
11
+
12
+ Non-admin users attempting to access `/admin` will be redirected to the regular dashboard.
13
+
14
+ ## Admin Panel Overview
15
+
16
+ ### Navigation
17
+
18
+ | Section | Description |
19
+ |---------|-------------|
20
+ | **Overview** | Platform-wide statistics and recent activity |
21
+ | **Users** | Manage all registered users |
22
+ | **Apps** | View all applications across users |
23
+ | **Builds** | Access all builds across the platform |
24
+
25
+ ### Accessing Admin Panel
26
+
27
+ 1. Login with the admin account
28
+ 2. Navigate to `/admin` or click the Admin link (if visible in navigation)
29
+ 3. The admin panel uses a distinct red theme to differentiate from the regular dashboard
30
+
31
+ ## Admin Overview
32
+
33
+ **URL**: `/admin`
34
+
35
+ ### Platform Statistics
36
+
37
+ The overview page displays aggregate metrics:
38
+
39
+ | Metric | Description |
40
+ |--------|-------------|
41
+ | **Total Users** | All registered users on the platform |
42
+ | **Total Apps** | All applications created |
43
+ | **Total Builds** | All builds uploaded |
44
+ | **Total Storage** | Combined storage used by all builds |
45
+
46
+ ### Recent Activity
47
+
48
+ Shows the latest platform activity including:
49
+ - New user registrations
50
+ - New app creations
51
+ - Recent build uploads
52
+
53
+ Each activity item shows:
54
+ - Activity type (user/app/build icon)
55
+ - Name or identifier
56
+ - Timestamp
57
+
58
+ ### Quick Actions
59
+
60
+ Direct links to:
61
+ - Manage Users
62
+ - Manage Apps
63
+ - Manage Builds
64
+ - Return to Dashboard
65
+
66
+ ## User Management
67
+
68
+ **URL**: `/admin/users`
69
+
70
+ ### User List
71
+
72
+ View all registered users with:
73
+
74
+ | Column | Description |
75
+ |--------|-------------|
76
+ | **User** | Avatar, display name, email, admin badge |
77
+ | **Plan** | Current subscription (beta/pro/enterprise) |
78
+ | **Apps** | Number of apps created |
79
+ | **Builds** | Number of builds uploaded |
80
+ | **Storage** | Storage space used |
81
+ | **Created** | Registration date |
82
+ | **Last Login** | Most recent login |
83
+
84
+ ### Search & Filter
85
+
86
+ - Search by email or display name
87
+ - Results update as you type
88
+
89
+ ### Pagination
90
+
91
+ - 20 users per page
92
+ - Navigate with Previous/Next buttons
93
+
94
+ ### Admin Badge
95
+
96
+ Users with admin privileges display a shield icon next to their name.
97
+
98
+ ## App Management
99
+
100
+ **URL**: `/admin/apps`
101
+
102
+ ### App List
103
+
104
+ View all applications with:
105
+
106
+ | Column | Description |
107
+ |--------|-------------|
108
+ | **App** | Icon and app name |
109
+ | **Package ID** | Unique package identifier |
110
+ | **Owner** | Email of the app owner |
111
+ | **Builds** | Total number of builds |
112
+ | **Platforms** | Supported platforms (iOS/Android/Web icons) |
113
+ | **Created** | Creation date |
114
+
115
+ ### Search & Filter
116
+
117
+ - Search by app name, package ID, or owner email
118
+ - Results update as you type
119
+
120
+ ### Pagination
121
+
122
+ - 20 apps per page
123
+ - Navigate with Previous/Next buttons
124
+
125
+ ## Build Management
126
+
127
+ **URL**: `/admin/builds`
128
+
129
+ ### Build List
130
+
131
+ View all builds with:
132
+
133
+ | Column | Description |
134
+ |--------|-------------|
135
+ | **Version** | Build version number |
136
+ | **App** | Associated app name |
137
+ | **Owner** | Email of the build owner |
138
+ | **Channel** | Deployment channel (production/staging/development) |
139
+ | **Platform** | Target platform |
140
+ | **Status** | Build status (active/processing/failed/archived) |
141
+ | **Size** | File size |
142
+ | **Uploaded** | Upload date |
143
+ | **Actions** | Download button |
144
+
145
+ ### Filters
146
+
147
+ Multiple filter options available:
148
+
149
+ - **Search**: Filter by version, app name, or owner email
150
+ - **Channel**: All/Production/Staging/Development
151
+ - **Platform**: All/iOS/Android/Web
152
+ - **Status**: All/Active/Processing/Uploading/Failed/Archived
153
+
154
+ ### Clear Filters
155
+
156
+ Click "Clear Filters" to reset all filters to default.
157
+
158
+ ### Build Actions
159
+
160
+ - **Download**: Download the build file from Google Drive
161
+
162
+ ### Pagination
163
+
164
+ - 20 builds per page
165
+ - Navigate with Previous/Next buttons
166
+
167
+ ## Admin Responsibilities
168
+
169
+ ### Regular Monitoring
170
+
171
+ Administrators should regularly:
172
+
173
+ 1. **Monitor User Growth**
174
+ - Track new registrations
175
+ - Identify unusual signup patterns
176
+
177
+ 2. **Monitor Storage Usage**
178
+ - Track total platform storage
179
+ - Identify users with excessive usage
180
+
181
+ 3. **Monitor Build Activity**
182
+ - Watch for failed builds
183
+ - Check for processing issues
184
+
185
+ 4. **Check Platform Health**
186
+ - Verify all services are operational
187
+ - Monitor error rates
188
+
189
+ ### User Support
190
+
191
+ Administrators may need to:
192
+
193
+ - Investigate user-reported issues
194
+ - Verify build uploads
195
+ - Check user permissions
196
+ - Review app configurations
197
+
198
+ ### Security
199
+
200
+ Administrators should:
201
+
202
+ - Never share admin credentials
203
+ - Regularly review access logs
204
+ - Monitor for suspicious activity
205
+ - Report security concerns immediately
206
+
207
+ ## Technical Details
208
+
209
+ ### Admin Detection
210
+
211
+ Admin status is determined by:
212
+ 1. User's email matching `aoneahsan@gmail.com`
213
+ 2. `isAdmin` field in Firestore user document set to `true`
214
+
215
+ ### Data Access
216
+
217
+ The admin panel fetches data without userId filters, allowing access to all documents:
218
+
219
+ - Users: All documents in `users` collection
220
+ - Apps: All documents in `apps` collection
221
+ - Builds: All documents in `builds` collection
222
+
223
+ ### Security Rules
224
+
225
+ Firestore security rules should ensure:
226
+ - Only admin users can read all documents
227
+ - Regular users can only read their own data
228
+ - Write operations follow normal permission checks
229
+
230
+ ## Troubleshooting
231
+
232
+ ### Cannot Access Admin Panel
233
+
234
+ 1. Verify you're logged in with the admin email
235
+ 2. Check that `isAdmin` is set to `true` in Firestore
236
+ 3. Clear browser cache and try again
237
+ 4. Check browser console for errors
238
+
239
+ ### Data Not Loading
240
+
241
+ 1. Check network connection
242
+ 2. Verify Firestore rules allow admin access
243
+ 3. Check for JavaScript errors in console
244
+ 4. Try refreshing the page
245
+
246
+ ### Search Not Working
247
+
248
+ 1. Ensure search term is correct
249
+ 2. Check that data is loaded (not showing loading spinner)
250
+ 3. Search is case-insensitive
251
+
252
+ ## Future Enhancements
253
+
254
+ Planned admin features:
255
+
256
+ - [ ] User role management
257
+ - [ ] App deletion/archival
258
+ - [ ] Build cleanup tools
259
+ - [ ] Platform settings management
260
+ - [ ] Audit logs
261
+ - [ ] Email notifications
262
+ - [ ] Bulk operations
263
+
264
+ ## Related Documentation
265
+
266
+ - [Dashboard Guide](./dashboard-guide.md) - Regular user dashboard
267
+ - [Channel Management](./channel-management.md) - Managing update channels
268
+ - [Security Best Practices](./security-best-practices.md) - Security guidelines