appforge-cli 1.1.2__tar.gz → 1.1.4__tar.gz
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.
- appforge_cli-1.1.4/PKG-INFO +280 -0
- appforge_cli-1.1.4/README.md +264 -0
- appforge_cli-1.1.4/appforge_cli.egg-info/PKG-INFO +280 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge_cli.egg-info/SOURCES.txt +1 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/pyproject.toml +1 -1
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/setup.py +1 -1
- appforge_cli-1.1.2/PKG-INFO +0 -15
- appforge_cli-1.1.2/appforge_cli.egg-info/PKG-INFO +0 -15
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/__init__.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/ai.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/capacitor.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/cli.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/config.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/detector.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/github.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/knowledge_base.json +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge/utils.py +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge_cli.egg-info/dependency_links.txt +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge_cli.egg-info/entry_points.txt +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge_cli.egg-info/requires.txt +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/appforge_cli.egg-info/top_level.txt +0 -0
- {appforge_cli-1.1.2 → appforge_cli-1.1.4}/setup.cfg +0 -0
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: appforge-cli
|
|
3
|
+
Version: 1.1.4
|
|
4
|
+
Summary: Convert web, Flutter, and native apps into Android/iOS apps automatically using cloud builds.
|
|
5
|
+
Author: AppForge Team
|
|
6
|
+
Author-email: AppForge Team <juniorsir.bot@gmail.com>
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
11
|
+
Classifier: Environment :: Console
|
|
12
|
+
Requires-Python: >=3.8
|
|
13
|
+
Description-Content-Type: text/markdown
|
|
14
|
+
Requires-Dist: requests
|
|
15
|
+
Dynamic: author
|
|
16
|
+
|
|
17
|
+
# ▲ AppForge CLI
|
|
18
|
+
|
|
19
|
+
**The Universal App Builder**
|
|
20
|
+
|
|
21
|
+
Convert your **web, Flutter, or native Android projects** into installable mobile apps with a single command, powered by **free GitHub cloud builds**.
|
|
22
|
+
|
|
23
|
+
AppForge is a command-line tool designed for developers who want a **fast, automated way to create Android (`.apk`) and iOS (`.zip` Xcode projects)** builds without complex local setups.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# ✨ Features
|
|
28
|
+
|
|
29
|
+
### Universal Framework Support
|
|
30
|
+
Build apps from multiple frameworks including:
|
|
31
|
+
|
|
32
|
+
- React
|
|
33
|
+
- Vite
|
|
34
|
+
- Next.js
|
|
35
|
+
- Flutter
|
|
36
|
+
- Native Android (Kotlin / Java)
|
|
37
|
+
- And more
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
### Zero Configuration
|
|
42
|
+
AppForge **automatically detects your project type** and sets up the complete build pipeline.
|
|
43
|
+
|
|
44
|
+
No manual configuration required.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
### Cloud-Powered Builds
|
|
49
|
+
AppForge uses **free GitHub Actions runners** to compile your apps.
|
|
50
|
+
|
|
51
|
+
That means:
|
|
52
|
+
|
|
53
|
+
- ❌ No Android Studio required
|
|
54
|
+
- ❌ No Xcode required
|
|
55
|
+
- ❌ No heavy local setup
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
### AI-Powered Permissions
|
|
60
|
+
AppForge scans your web code to detect required native features like:
|
|
61
|
+
|
|
62
|
+
- Camera
|
|
63
|
+
- GPS
|
|
64
|
+
- Microphone
|
|
65
|
+
- File access
|
|
66
|
+
|
|
67
|
+
It then **automatically configures the necessary permissions**.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### Vercel-like CLI Experience
|
|
72
|
+
A clean and modern interactive terminal experience.
|
|
73
|
+
|
|
74
|
+
You get:
|
|
75
|
+
|
|
76
|
+
- guided prompts
|
|
77
|
+
- real-time status
|
|
78
|
+
- beautiful CLI output
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### Cross-Platform
|
|
83
|
+
Generate builds from **any operating system**.
|
|
84
|
+
|
|
85
|
+
| OS | Supported |
|
|
86
|
+
|----|-----------|
|
|
87
|
+
| Windows | ✔ |
|
|
88
|
+
| macOS | ✔ |
|
|
89
|
+
| Linux | ✔ |
|
|
90
|
+
| Termux | ✔ |
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
# ⚙️ How It Works
|
|
95
|
+
|
|
96
|
+
AppForge uses a **two-repository architecture**.
|
|
97
|
+
|
|
98
|
+
## 1️⃣ appforge-cli (Local Tool)
|
|
99
|
+
|
|
100
|
+
Installed on your machine.
|
|
101
|
+
|
|
102
|
+
Responsibilities:
|
|
103
|
+
|
|
104
|
+
- Detect project type
|
|
105
|
+
- Configure build
|
|
106
|
+
- Package project
|
|
107
|
+
- Upload to cloud
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 2️⃣ appforge-build (Cloud Builder)
|
|
112
|
+
|
|
113
|
+
A repository you fork.
|
|
114
|
+
|
|
115
|
+
Responsibilities:
|
|
116
|
+
|
|
117
|
+
- Run GitHub Actions
|
|
118
|
+
- Compile the app
|
|
119
|
+
- Produce `.apk` or `.zip`
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### Why this architecture?
|
|
124
|
+
|
|
125
|
+
Because:
|
|
126
|
+
|
|
127
|
+
- You use **your own GitHub free build minutes**
|
|
128
|
+
- No external servers needed
|
|
129
|
+
- Full control of builds
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
# 🚀 Getting Started in 60 Seconds
|
|
134
|
+
|
|
135
|
+
## Step 1 — Fork the Cloud Builder
|
|
136
|
+
|
|
137
|
+
Go to the **AppForge Build Template** repository and click:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
Fork
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
This creates your **personal build server**.
|
|
144
|
+
|
|
145
|
+
You only need to do this **once**.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
# Step 2 — Install AppForge CLI
|
|
150
|
+
|
|
151
|
+
Open your terminal and install globally.
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
pip install appforge-cli
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Then verify:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
appforge --help
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
# Step 3 — Build Your First App
|
|
166
|
+
|
|
167
|
+
Navigate to your project folder.
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
cd my-awesome-react-app
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Initialize AppForge.
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
appforge init
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
AppForge will:
|
|
180
|
+
|
|
181
|
+
- detect framework
|
|
182
|
+
- configure build settings
|
|
183
|
+
- create project config
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
Start your first cloud build.
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
appforge build
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Paste your **GitHub token** when asked.
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
### Check build status
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
appforge status
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
### Download your app
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
appforge download
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Your compiled app will appear locally.
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
# 📦 Supported Project Types
|
|
216
|
+
|
|
217
|
+
| Framework | Detection | Notes |
|
|
218
|
+
|-----------|-----------|------|
|
|
219
|
+
| Flutter | `pubspec.yaml` | Uses Flutter SDK |
|
|
220
|
+
| Native Android | `build.gradle` | Builds with Gradle |
|
|
221
|
+
| React (CRA) | `react-scripts` | Wrapped with Capacitor |
|
|
222
|
+
| Vite | `vite.config.js` | Wraps `dist` folder |
|
|
223
|
+
| Next.js | `next.config.js` | Requires `output: 'export'` |
|
|
224
|
+
| Angular | `@angular/core` | Wraps `dist` |
|
|
225
|
+
| SvelteKit | `@sveltejs/kit` | Requires static adapter |
|
|
226
|
+
| Nuxt.js | `nuxt.config.js` | Requires `nuxt generate` |
|
|
227
|
+
| Plain HTML | `index.html` | Packaged into `www` |
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
# 🧠 Example Workflow
|
|
232
|
+
|
|
233
|
+
```
|
|
234
|
+
cd my-project
|
|
235
|
+
|
|
236
|
+
appforge init
|
|
237
|
+
appforge build
|
|
238
|
+
appforge status
|
|
239
|
+
appforge download
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Done. Your app is ready.
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
# 🤝 Contributing
|
|
247
|
+
|
|
248
|
+
Contributions are welcome!
|
|
249
|
+
|
|
250
|
+
You can help by:
|
|
251
|
+
|
|
252
|
+
- Reporting bugs
|
|
253
|
+
- Suggesting features
|
|
254
|
+
- Submitting pull requests
|
|
255
|
+
|
|
256
|
+
Start by opening an **Issue**.
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
# 📜 License
|
|
261
|
+
|
|
262
|
+
This project is licensed under the **MIT License**.
|
|
263
|
+
|
|
264
|
+
Feel free to use, modify, and distribute.
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
# ⭐ Support the Project
|
|
269
|
+
|
|
270
|
+
If you like AppForge, consider:
|
|
271
|
+
|
|
272
|
+
⭐ Starring the repository
|
|
273
|
+
🔁 Sharing with developers
|
|
274
|
+
🐛 Reporting bugs
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
# ▲ AppForge
|
|
279
|
+
|
|
280
|
+
**Build Apps. Anywhere. Instantly.**
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
# ▲ AppForge CLI
|
|
2
|
+
|
|
3
|
+
**The Universal App Builder**
|
|
4
|
+
|
|
5
|
+
Convert your **web, Flutter, or native Android projects** into installable mobile apps with a single command, powered by **free GitHub cloud builds**.
|
|
6
|
+
|
|
7
|
+
AppForge is a command-line tool designed for developers who want a **fast, automated way to create Android (`.apk`) and iOS (`.zip` Xcode projects)** builds without complex local setups.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# ✨ Features
|
|
12
|
+
|
|
13
|
+
### Universal Framework Support
|
|
14
|
+
Build apps from multiple frameworks including:
|
|
15
|
+
|
|
16
|
+
- React
|
|
17
|
+
- Vite
|
|
18
|
+
- Next.js
|
|
19
|
+
- Flutter
|
|
20
|
+
- Native Android (Kotlin / Java)
|
|
21
|
+
- And more
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
### Zero Configuration
|
|
26
|
+
AppForge **automatically detects your project type** and sets up the complete build pipeline.
|
|
27
|
+
|
|
28
|
+
No manual configuration required.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
### Cloud-Powered Builds
|
|
33
|
+
AppForge uses **free GitHub Actions runners** to compile your apps.
|
|
34
|
+
|
|
35
|
+
That means:
|
|
36
|
+
|
|
37
|
+
- ❌ No Android Studio required
|
|
38
|
+
- ❌ No Xcode required
|
|
39
|
+
- ❌ No heavy local setup
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### AI-Powered Permissions
|
|
44
|
+
AppForge scans your web code to detect required native features like:
|
|
45
|
+
|
|
46
|
+
- Camera
|
|
47
|
+
- GPS
|
|
48
|
+
- Microphone
|
|
49
|
+
- File access
|
|
50
|
+
|
|
51
|
+
It then **automatically configures the necessary permissions**.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### Vercel-like CLI Experience
|
|
56
|
+
A clean and modern interactive terminal experience.
|
|
57
|
+
|
|
58
|
+
You get:
|
|
59
|
+
|
|
60
|
+
- guided prompts
|
|
61
|
+
- real-time status
|
|
62
|
+
- beautiful CLI output
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
### Cross-Platform
|
|
67
|
+
Generate builds from **any operating system**.
|
|
68
|
+
|
|
69
|
+
| OS | Supported |
|
|
70
|
+
|----|-----------|
|
|
71
|
+
| Windows | ✔ |
|
|
72
|
+
| macOS | ✔ |
|
|
73
|
+
| Linux | ✔ |
|
|
74
|
+
| Termux | ✔ |
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
# ⚙️ How It Works
|
|
79
|
+
|
|
80
|
+
AppForge uses a **two-repository architecture**.
|
|
81
|
+
|
|
82
|
+
## 1️⃣ appforge-cli (Local Tool)
|
|
83
|
+
|
|
84
|
+
Installed on your machine.
|
|
85
|
+
|
|
86
|
+
Responsibilities:
|
|
87
|
+
|
|
88
|
+
- Detect project type
|
|
89
|
+
- Configure build
|
|
90
|
+
- Package project
|
|
91
|
+
- Upload to cloud
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 2️⃣ appforge-build (Cloud Builder)
|
|
96
|
+
|
|
97
|
+
A repository you fork.
|
|
98
|
+
|
|
99
|
+
Responsibilities:
|
|
100
|
+
|
|
101
|
+
- Run GitHub Actions
|
|
102
|
+
- Compile the app
|
|
103
|
+
- Produce `.apk` or `.zip`
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
### Why this architecture?
|
|
108
|
+
|
|
109
|
+
Because:
|
|
110
|
+
|
|
111
|
+
- You use **your own GitHub free build minutes**
|
|
112
|
+
- No external servers needed
|
|
113
|
+
- Full control of builds
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
# 🚀 Getting Started in 60 Seconds
|
|
118
|
+
|
|
119
|
+
## Step 1 — Fork the Cloud Builder
|
|
120
|
+
|
|
121
|
+
Go to the **AppForge Build Template** repository and click:
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
Fork
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
This creates your **personal build server**.
|
|
128
|
+
|
|
129
|
+
You only need to do this **once**.
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
# Step 2 — Install AppForge CLI
|
|
134
|
+
|
|
135
|
+
Open your terminal and install globally.
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
pip install appforge-cli
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Then verify:
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
appforge --help
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
# Step 3 — Build Your First App
|
|
150
|
+
|
|
151
|
+
Navigate to your project folder.
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
cd my-awesome-react-app
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Initialize AppForge.
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
appforge init
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
AppForge will:
|
|
164
|
+
|
|
165
|
+
- detect framework
|
|
166
|
+
- configure build settings
|
|
167
|
+
- create project config
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
Start your first cloud build.
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
appforge build
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
Paste your **GitHub token** when asked.
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
### Check build status
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
appforge status
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
### Download your app
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
appforge download
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Your compiled app will appear locally.
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
# 📦 Supported Project Types
|
|
200
|
+
|
|
201
|
+
| Framework | Detection | Notes |
|
|
202
|
+
|-----------|-----------|------|
|
|
203
|
+
| Flutter | `pubspec.yaml` | Uses Flutter SDK |
|
|
204
|
+
| Native Android | `build.gradle` | Builds with Gradle |
|
|
205
|
+
| React (CRA) | `react-scripts` | Wrapped with Capacitor |
|
|
206
|
+
| Vite | `vite.config.js` | Wraps `dist` folder |
|
|
207
|
+
| Next.js | `next.config.js` | Requires `output: 'export'` |
|
|
208
|
+
| Angular | `@angular/core` | Wraps `dist` |
|
|
209
|
+
| SvelteKit | `@sveltejs/kit` | Requires static adapter |
|
|
210
|
+
| Nuxt.js | `nuxt.config.js` | Requires `nuxt generate` |
|
|
211
|
+
| Plain HTML | `index.html` | Packaged into `www` |
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
# 🧠 Example Workflow
|
|
216
|
+
|
|
217
|
+
```
|
|
218
|
+
cd my-project
|
|
219
|
+
|
|
220
|
+
appforge init
|
|
221
|
+
appforge build
|
|
222
|
+
appforge status
|
|
223
|
+
appforge download
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
Done. Your app is ready.
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
# 🤝 Contributing
|
|
231
|
+
|
|
232
|
+
Contributions are welcome!
|
|
233
|
+
|
|
234
|
+
You can help by:
|
|
235
|
+
|
|
236
|
+
- Reporting bugs
|
|
237
|
+
- Suggesting features
|
|
238
|
+
- Submitting pull requests
|
|
239
|
+
|
|
240
|
+
Start by opening an **Issue**.
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
# 📜 License
|
|
245
|
+
|
|
246
|
+
This project is licensed under the **MIT License**.
|
|
247
|
+
|
|
248
|
+
Feel free to use, modify, and distribute.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
# ⭐ Support the Project
|
|
253
|
+
|
|
254
|
+
If you like AppForge, consider:
|
|
255
|
+
|
|
256
|
+
⭐ Starring the repository
|
|
257
|
+
🔁 Sharing with developers
|
|
258
|
+
🐛 Reporting bugs
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
# ▲ AppForge
|
|
263
|
+
|
|
264
|
+
**Build Apps. Anywhere. Instantly.**
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: appforge-cli
|
|
3
|
+
Version: 1.1.4
|
|
4
|
+
Summary: Convert web, Flutter, and native apps into Android/iOS apps automatically using cloud builds.
|
|
5
|
+
Author: AppForge Team
|
|
6
|
+
Author-email: AppForge Team <juniorsir.bot@gmail.com>
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
11
|
+
Classifier: Environment :: Console
|
|
12
|
+
Requires-Python: >=3.8
|
|
13
|
+
Description-Content-Type: text/markdown
|
|
14
|
+
Requires-Dist: requests
|
|
15
|
+
Dynamic: author
|
|
16
|
+
|
|
17
|
+
# ▲ AppForge CLI
|
|
18
|
+
|
|
19
|
+
**The Universal App Builder**
|
|
20
|
+
|
|
21
|
+
Convert your **web, Flutter, or native Android projects** into installable mobile apps with a single command, powered by **free GitHub cloud builds**.
|
|
22
|
+
|
|
23
|
+
AppForge is a command-line tool designed for developers who want a **fast, automated way to create Android (`.apk`) and iOS (`.zip` Xcode projects)** builds without complex local setups.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# ✨ Features
|
|
28
|
+
|
|
29
|
+
### Universal Framework Support
|
|
30
|
+
Build apps from multiple frameworks including:
|
|
31
|
+
|
|
32
|
+
- React
|
|
33
|
+
- Vite
|
|
34
|
+
- Next.js
|
|
35
|
+
- Flutter
|
|
36
|
+
- Native Android (Kotlin / Java)
|
|
37
|
+
- And more
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
### Zero Configuration
|
|
42
|
+
AppForge **automatically detects your project type** and sets up the complete build pipeline.
|
|
43
|
+
|
|
44
|
+
No manual configuration required.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
### Cloud-Powered Builds
|
|
49
|
+
AppForge uses **free GitHub Actions runners** to compile your apps.
|
|
50
|
+
|
|
51
|
+
That means:
|
|
52
|
+
|
|
53
|
+
- ❌ No Android Studio required
|
|
54
|
+
- ❌ No Xcode required
|
|
55
|
+
- ❌ No heavy local setup
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
### AI-Powered Permissions
|
|
60
|
+
AppForge scans your web code to detect required native features like:
|
|
61
|
+
|
|
62
|
+
- Camera
|
|
63
|
+
- GPS
|
|
64
|
+
- Microphone
|
|
65
|
+
- File access
|
|
66
|
+
|
|
67
|
+
It then **automatically configures the necessary permissions**.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### Vercel-like CLI Experience
|
|
72
|
+
A clean and modern interactive terminal experience.
|
|
73
|
+
|
|
74
|
+
You get:
|
|
75
|
+
|
|
76
|
+
- guided prompts
|
|
77
|
+
- real-time status
|
|
78
|
+
- beautiful CLI output
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### Cross-Platform
|
|
83
|
+
Generate builds from **any operating system**.
|
|
84
|
+
|
|
85
|
+
| OS | Supported |
|
|
86
|
+
|----|-----------|
|
|
87
|
+
| Windows | ✔ |
|
|
88
|
+
| macOS | ✔ |
|
|
89
|
+
| Linux | ✔ |
|
|
90
|
+
| Termux | ✔ |
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
# ⚙️ How It Works
|
|
95
|
+
|
|
96
|
+
AppForge uses a **two-repository architecture**.
|
|
97
|
+
|
|
98
|
+
## 1️⃣ appforge-cli (Local Tool)
|
|
99
|
+
|
|
100
|
+
Installed on your machine.
|
|
101
|
+
|
|
102
|
+
Responsibilities:
|
|
103
|
+
|
|
104
|
+
- Detect project type
|
|
105
|
+
- Configure build
|
|
106
|
+
- Package project
|
|
107
|
+
- Upload to cloud
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 2️⃣ appforge-build (Cloud Builder)
|
|
112
|
+
|
|
113
|
+
A repository you fork.
|
|
114
|
+
|
|
115
|
+
Responsibilities:
|
|
116
|
+
|
|
117
|
+
- Run GitHub Actions
|
|
118
|
+
- Compile the app
|
|
119
|
+
- Produce `.apk` or `.zip`
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### Why this architecture?
|
|
124
|
+
|
|
125
|
+
Because:
|
|
126
|
+
|
|
127
|
+
- You use **your own GitHub free build minutes**
|
|
128
|
+
- No external servers needed
|
|
129
|
+
- Full control of builds
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
# 🚀 Getting Started in 60 Seconds
|
|
134
|
+
|
|
135
|
+
## Step 1 — Fork the Cloud Builder
|
|
136
|
+
|
|
137
|
+
Go to the **AppForge Build Template** repository and click:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
Fork
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
This creates your **personal build server**.
|
|
144
|
+
|
|
145
|
+
You only need to do this **once**.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
# Step 2 — Install AppForge CLI
|
|
150
|
+
|
|
151
|
+
Open your terminal and install globally.
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
pip install appforge-cli
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Then verify:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
appforge --help
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
# Step 3 — Build Your First App
|
|
166
|
+
|
|
167
|
+
Navigate to your project folder.
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
cd my-awesome-react-app
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Initialize AppForge.
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
appforge init
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
AppForge will:
|
|
180
|
+
|
|
181
|
+
- detect framework
|
|
182
|
+
- configure build settings
|
|
183
|
+
- create project config
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
Start your first cloud build.
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
appforge build
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Paste your **GitHub token** when asked.
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
### Check build status
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
appforge status
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
### Download your app
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
appforge download
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Your compiled app will appear locally.
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
# 📦 Supported Project Types
|
|
216
|
+
|
|
217
|
+
| Framework | Detection | Notes |
|
|
218
|
+
|-----------|-----------|------|
|
|
219
|
+
| Flutter | `pubspec.yaml` | Uses Flutter SDK |
|
|
220
|
+
| Native Android | `build.gradle` | Builds with Gradle |
|
|
221
|
+
| React (CRA) | `react-scripts` | Wrapped with Capacitor |
|
|
222
|
+
| Vite | `vite.config.js` | Wraps `dist` folder |
|
|
223
|
+
| Next.js | `next.config.js` | Requires `output: 'export'` |
|
|
224
|
+
| Angular | `@angular/core` | Wraps `dist` |
|
|
225
|
+
| SvelteKit | `@sveltejs/kit` | Requires static adapter |
|
|
226
|
+
| Nuxt.js | `nuxt.config.js` | Requires `nuxt generate` |
|
|
227
|
+
| Plain HTML | `index.html` | Packaged into `www` |
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
# 🧠 Example Workflow
|
|
232
|
+
|
|
233
|
+
```
|
|
234
|
+
cd my-project
|
|
235
|
+
|
|
236
|
+
appforge init
|
|
237
|
+
appforge build
|
|
238
|
+
appforge status
|
|
239
|
+
appforge download
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Done. Your app is ready.
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
# 🤝 Contributing
|
|
247
|
+
|
|
248
|
+
Contributions are welcome!
|
|
249
|
+
|
|
250
|
+
You can help by:
|
|
251
|
+
|
|
252
|
+
- Reporting bugs
|
|
253
|
+
- Suggesting features
|
|
254
|
+
- Submitting pull requests
|
|
255
|
+
|
|
256
|
+
Start by opening an **Issue**.
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
# 📜 License
|
|
261
|
+
|
|
262
|
+
This project is licensed under the **MIT License**.
|
|
263
|
+
|
|
264
|
+
Feel free to use, modify, and distribute.
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
# ⭐ Support the Project
|
|
269
|
+
|
|
270
|
+
If you like AppForge, consider:
|
|
271
|
+
|
|
272
|
+
⭐ Starring the repository
|
|
273
|
+
🔁 Sharing with developers
|
|
274
|
+
🐛 Reporting bugs
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
# ▲ AppForge
|
|
279
|
+
|
|
280
|
+
**Build Apps. Anywhere. Instantly.**
|
|
@@ -2,7 +2,7 @@ from setuptools import setup
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name="appforge",
|
|
5
|
-
version="1.1.
|
|
5
|
+
version="1.1.4",
|
|
6
6
|
description="Convert web apps into Android apps automatically using Capacitor and GitHub cloud builds.",
|
|
7
7
|
author="AppForge Team",
|
|
8
8
|
packages=["appforge"], # <-- CHANGE THIS LINE
|
appforge_cli-1.1.2/PKG-INFO
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: appforge-cli
|
|
3
|
-
Version: 1.1.2
|
|
4
|
-
Summary: Convert web, Flutter, and native apps into Android/iOS apps automatically using cloud builds.
|
|
5
|
-
Author: AppForge Team
|
|
6
|
-
Author-email: AppForge Team <juniorsir.bot@gmail.com>
|
|
7
|
-
Classifier: Programming Language :: Python :: 3
|
|
8
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
-
Classifier: Operating System :: OS Independent
|
|
10
|
-
Classifier: Topic :: Software Development :: Build Tools
|
|
11
|
-
Classifier: Environment :: Console
|
|
12
|
-
Requires-Python: >=3.8
|
|
13
|
-
Description-Content-Type: text/markdown
|
|
14
|
-
Requires-Dist: requests
|
|
15
|
-
Dynamic: author
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: appforge-cli
|
|
3
|
-
Version: 1.1.2
|
|
4
|
-
Summary: Convert web, Flutter, and native apps into Android/iOS apps automatically using cloud builds.
|
|
5
|
-
Author: AppForge Team
|
|
6
|
-
Author-email: AppForge Team <juniorsir.bot@gmail.com>
|
|
7
|
-
Classifier: Programming Language :: Python :: 3
|
|
8
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
-
Classifier: Operating System :: OS Independent
|
|
10
|
-
Classifier: Topic :: Software Development :: Build Tools
|
|
11
|
-
Classifier: Environment :: Console
|
|
12
|
-
Requires-Python: >=3.8
|
|
13
|
-
Description-Content-Type: text/markdown
|
|
14
|
-
Requires-Dist: requests
|
|
15
|
-
Dynamic: author
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|