andrud 1.0.1 → 1.0.2
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 +295 -306
- package/dist/__tests__/context.test.d.ts +5 -0
- package/dist/__tests__/context.test.d.ts.map +1 -0
- package/dist/__tests__/context.test.js +86 -0
- package/dist/__tests__/context.test.js.map +1 -0
- package/dist/__tests__/generator.test.d.ts +5 -0
- package/dist/__tests__/generator.test.d.ts.map +1 -0
- package/dist/__tests__/generator.test.js +83 -0
- package/dist/__tests__/generator.test.js.map +1 -0
- package/dist/__tests__/validation.test.d.ts +5 -0
- package/dist/__tests__/validation.test.d.ts.map +1 -0
- package/dist/__tests__/validation.test.js +81 -0
- package/dist/__tests__/validation.test.js.map +1 -0
- package/dist/cli/commands/create.d.ts +10 -0
- package/dist/cli/commands/create.d.ts.map +1 -0
- package/dist/cli/commands/create.js +203 -0
- package/dist/cli/commands/create.js.map +1 -0
- package/dist/cli/commands/info.d.ts +13 -0
- package/dist/cli/commands/info.d.ts.map +1 -0
- package/dist/cli/commands/info.js +153 -0
- package/dist/cli/commands/info.js.map +1 -0
- package/dist/cli/commands/init.d.ts +15 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +141 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/list.d.ts +18 -0
- package/dist/cli/commands/list.d.ts.map +1 -0
- package/dist/cli/commands/list.js +122 -0
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/new.d.ts +22 -0
- package/dist/cli/commands/new.d.ts.map +1 -0
- package/dist/cli/commands/new.js +245 -0
- package/dist/cli/commands/new.js.map +1 -0
- package/dist/cli/index.d.ts +5 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +99 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/config.d.ts +89 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +151 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/context.d.ts +47 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +175 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/generator.d.ts +44 -0
- package/dist/core/generator.d.ts.map +1 -0
- package/{src/core/generator.ts → dist/core/generator.js} +394 -484
- package/dist/core/generator.js.map +1 -0
- package/dist/core/types.d.ts +125 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +22 -0
- package/dist/core/types.js.map +1 -0
- package/dist/templates/index.d.ts +36 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +141 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/ui/colors.d.ts +40 -0
- package/dist/ui/colors.d.ts.map +1 -0
- package/dist/ui/colors.js +117 -0
- package/dist/ui/colors.js.map +1 -0
- package/dist/ui/output.d.ts +69 -0
- package/dist/ui/output.d.ts.map +1 -0
- package/dist/ui/output.js +199 -0
- package/dist/ui/output.js.map +1 -0
- package/dist/ui/prompts.d.ts +20 -0
- package/dist/ui/prompts.d.ts.map +1 -0
- package/dist/ui/prompts.js +118 -0
- package/dist/ui/prompts.js.map +1 -0
- package/dist/ui/spinners.d.ts +30 -0
- package/dist/ui/spinners.d.ts.map +1 -0
- package/dist/ui/spinners.js +74 -0
- package/dist/ui/spinners.js.map +1 -0
- package/dist/ui/types.d.ts +35 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +5 -0
- package/dist/ui/types.js.map +1 -0
- package/dist/utils/filesystem.d.ts +38 -0
- package/dist/utils/filesystem.d.ts.map +1 -0
- package/dist/utils/filesystem.js +181 -0
- package/dist/utils/filesystem.js.map +1 -0
- package/dist/utils/logger.d.ts +27 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +52 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/object.d.ts +140 -0
- package/dist/utils/object.d.ts.map +1 -0
- package/dist/utils/object.js +385 -0
- package/dist/utils/object.js.map +1 -0
- package/dist/utils/validation.d.ts +35 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +270 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +10 -21
- package/CHANGELOG.md +0 -70
- package/CONTRIBUTING.md +0 -132
- package/sc.png +0 -0
- package/src/__tests__/context.test.ts +0 -133
- package/src/__tests__/generator.test.ts +0 -107
- package/src/__tests__/validation.test.ts +0 -105
- package/src/cli/commands/create.ts +0 -252
- package/src/cli/commands/info.ts +0 -178
- package/src/cli/commands/init.ts +0 -186
- package/src/cli/commands/list.ts +0 -156
- package/src/cli/commands/new.ts +0 -316
- package/src/cli/index.ts +0 -116
- package/src/core/config.ts +0 -172
- package/src/core/context.ts +0 -212
- package/src/core/types.ts +0 -184
- package/src/templates/index.ts +0 -162
- package/src/types/gradient-string.d.ts +0 -25
- package/src/ui/colors.ts +0 -139
- package/src/ui/output.ts +0 -230
- package/src/ui/prompts.ts +0 -170
- package/src/ui/spinners.ts +0 -95
- package/src/ui/types.ts +0 -41
- package/src/utils/filesystem.ts +0 -222
- package/src/utils/logger.ts +0 -67
- package/src/utils/object.ts +0 -456
- package/src/utils/validation.ts +0 -345
- package/tsconfig.json +0 -25
package/README.md
CHANGED
|
@@ -1,307 +1,296 @@
|
|
|
1
|
-
# andrud
|
|
2
|
-
|
|
3
|
-
<p align="center">
|
|
4
|
-
<a href="https://www.npmjs.com/package/andrud"><img src="https://img.shields.io/npm/v/andrud?style=for-the-badge&color=%2300C9FF&labelColor=%23222" alt="npm version"></a>
|
|
5
|
-
<a href="https://www.npmjs.com/package/andrud"><img src="https://img.shields.io/npm/dm/andrud?style=for-the-badge&color=%2392FE9D&labelColor=%23222" alt="npm downloads"></a>
|
|
6
|
-
<img src="https://img.shields.io/github/license/MurShidM01/andrud?style=for-the-badge&color=%23ff6b6b&labelColor=%23222" alt="license">
|
|
7
|
-
<a href="https://github.com/MurShidM01/andrud/stargazers"><img src="https://img.shields.io/github/stars/MurShidM01/andrud?style=for-the-badge&color=%23ffd93d&labelColor=%23222" alt="stars"></a>
|
|
8
|
-
<a href="https://github.com/MurShidM01/andrud/network/members"><img src="https://img.shields.io/github/forks/MurShidM01/andrud?style=for-the-badge&color=%236bcb77&labelColor=%23222" alt="forks"></a>
|
|
9
|
-
</p>
|
|
10
|
-
|
|
11
|
-
<p align="center">
|
|
12
|
-
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/Node.js-
|
|
13
|
-
<a href="https://www.typescriptlang.org/"><img src="https://img.shields.io/badge/TypeScript-5.4-blue?style=for-the-badge&logo=typescript&logoColor=white" alt="typescript"></a>
|
|
14
|
-
<a href="https://developer.android.com/studio"><img src="https://img.shields.io/badge/
|
|
15
|
-
<a href="https://kotlinlang.org/"><img src="https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white" alt="kotlin"></a>
|
|
16
|
-
</p>
|
|
17
|
-
|
|
18
|
-
<h1 align="center"
|
|
19
|
-
|
|
20
|
-
<p align="center">
|
|
21
|
-
<strong>andrud</strong> is a blazing-fast, interactive CLI tool for generating production-ready Android project structures in seconds. Built for developers who value speed, consistency, and modern Android development practices.
|
|
22
|
-
</p>
|
|
23
|
-
|
|
24
|
-
<p align="center">
|
|
25
|
-
<img src="https://raw.githubusercontent.com/MurShidM01/andrud/main/sc.png" width="800" alt="andrud demo">
|
|
26
|
-
</p>
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
##
|
|
31
|
-
|
|
32
|
-
| Feature | Description |
|
|
33
|
-
|---------|-------------|
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
37
|
-
|
|
|
38
|
-
|
|
|
39
|
-
|
|
|
40
|
-
|
|
|
41
|
-
|
|
|
42
|
-
|
|
43
|
-
---
|
|
44
|
-
|
|
45
|
-
##
|
|
46
|
-
|
|
47
|
-
| Template | Language | UI Framework | Use Case |
|
|
48
|
-
|----------|----------|--------------|----------|
|
|
49
|
-
|
|
|
50
|
-
|
|
|
51
|
-
|
|
|
52
|
-
|
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
##
|
|
57
|
-
|
|
58
|
-
### Installation
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
# Install globally via npm
|
|
62
|
-
npm install -g andrud
|
|
63
|
-
|
|
64
|
-
# Verify installation
|
|
65
|
-
andrud --version
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
### Create a New Project
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
# Interactive mode (recommended)
|
|
72
|
-
andrud create
|
|
73
|
-
|
|
74
|
-
# With all options specified
|
|
75
|
-
andrud new MyApp -t kotlin-compose -p com.example.myapp -d ./projects
|
|
76
|
-
|
|
77
|
-
# Quick create with defaults
|
|
78
|
-
andrud new MyApp
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### Available Commands
|
|
82
|
-
|
|
83
|
-
| Command | Description |
|
|
84
|
-
|---------|-------------|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
##
|
|
93
|
-
|
|
94
|
-
### Interactive Project Creation
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
$ andrud create
|
|
98
|
-
|
|
99
|
-
? Enter your app name: MyAwesomeApp
|
|
100
|
-
? Enter package name: com.example.myawesomeapp
|
|
101
|
-
? Select template: kotlin-compose
|
|
102
|
-
? Project directory: ./projects
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
### Create with Options
|
|
109
|
-
|
|
110
|
-
```bash
|
|
111
|
-
# Kotlin with Jetpack Compose
|
|
112
|
-
andrud new MyComposeApp -t kotlin-compose -p com.mydomain.app
|
|
113
|
-
|
|
114
|
-
# Kotlin with XML Views
|
|
115
|
-
andrud new MyKotlinApp -t kotlin-xml -p com.mydomain.app
|
|
116
|
-
|
|
117
|
-
# Java with XML Views
|
|
118
|
-
andrud new MyJavaApp -t java-xml -p com.mydomain.app
|
|
119
|
-
|
|
120
|
-
# Native C++ with NDK
|
|
121
|
-
andrud new MyNativeApp -t native-cpp -p com.mydomain.app
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
### List Templates
|
|
125
|
-
|
|
126
|
-
```bash
|
|
127
|
-
$ andrud list
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
1. Kotlin with XML Layouts
|
|
134
|
-
Traditional Android Views with Kotlin...
|
|
135
|
-
|
|
136
|
-
2. Kotlin with Jetpack Compose
|
|
137
|
-
Modern declarative UI...
|
|
138
|
-
|
|
139
|
-
3. Java with XML Layouts
|
|
140
|
-
Traditional Android Views with Java...
|
|
141
|
-
|
|
142
|
-
4. Kotlin with Native C++/NDK
|
|
143
|
-
Native C++ development with JNI...
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
##
|
|
149
|
-
|
|
150
|
-
Generated projects include:
|
|
151
|
-
|
|
152
|
-
```
|
|
153
|
-
MyApp/
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
---
|
|
171
|
-
|
|
172
|
-
##
|
|
173
|
-
|
|
174
|
-
### SDK Versions
|
|
175
|
-
|
|
176
|
-
```bash
|
|
177
|
-
# Custom SDK versions
|
|
178
|
-
andrud new MyApp --min-sdk 24 --target-sdk 35
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
### Features
|
|
182
|
-
|
|
183
|
-
```bash
|
|
184
|
-
# Disable specific features
|
|
185
|
-
andrud new MyApp --no-git --no-readme
|
|
186
|
-
|
|
187
|
-
# Skip dependency installation
|
|
188
|
-
andrud new MyApp --skip-install
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
##
|
|
194
|
-
|
|
195
|
-
### Setup
|
|
196
|
-
|
|
197
|
-
```bash
|
|
198
|
-
# Clone the repository
|
|
199
|
-
git clone https://github.com/MurShidM01/andrud.git
|
|
200
|
-
cd andrud
|
|
201
|
-
|
|
202
|
-
# Install dependencies
|
|
203
|
-
npm install
|
|
204
|
-
|
|
205
|
-
# Build the project
|
|
206
|
-
npm run build
|
|
207
|
-
|
|
208
|
-
# Run in development mode
|
|
209
|
-
npm run dev -- create
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
### Available Scripts
|
|
213
|
-
|
|
214
|
-
| Script | Description |
|
|
215
|
-
|--------|-------------|
|
|
216
|
-
|
|
|
217
|
-
|
|
|
218
|
-
|
|
|
219
|
-
|
|
|
220
|
-
|
|
221
|
-
---
|
|
222
|
-
|
|
223
|
-
##
|
|
224
|
-
|
|
225
|
-
| Package | Purpose |
|
|
226
|
-
|---------|---------|
|
|
227
|
-
|
|
|
228
|
-
|
|
|
229
|
-
|
|
|
230
|
-
|
|
|
231
|
-
|
|
|
232
|
-
|
|
|
233
|
-
|
|
|
234
|
-
|
|
235
|
-
---
|
|
236
|
-
|
|
237
|
-
##
|
|
238
|
-
|
|
239
|
-
<p align="center">
|
|
240
|
-
<img src="https://skillicons.dev/icons?i=nodejs,typescript,androidstudio,kotlin,gradle,npm" alt="Tech Stack">
|
|
241
|
-
</p>
|
|
242
|
-
|
|
243
|
-
---
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<p align="center">
|
|
286
|
-
<a href="https://github.com/MurShidM01
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
</p>
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
<p align="center">
|
|
297
|
-
<strong>Made with ?? by <a href="https://github.com/MurShidM01">MurShidM01</a></strong>
|
|
298
|
-
</p>
|
|
299
|
-
|
|
300
|
-
<p align="center">
|
|
301
|
-
<img src="https://img.shields.io/badge/JavaScript-ES2022-yellow?style=for-the-badge&logo=javascript&logoColor=black" alt="js">
|
|
302
|
-
<img src="https://img.shields.io/badge/PowerShell-7+-blue?style=for-the-badge&logo=powershell" alt="powershell">
|
|
303
|
-
</p>
|
|
304
|
-
|
|
305
|
-
<p align="center">
|
|
306
|
-
<substar>Star ? this repo if you find it useful!</substar>
|
|
1
|
+
# andrud
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<a href="https://www.npmjs.com/package/andrud"><img src="https://img.shields.io/npm/v/andrud?style=for-the-badge&color=%2300C9FF&labelColor=%23222" alt="npm version"></a>
|
|
5
|
+
<a href="https://www.npmjs.com/package/andrud"><img src="https://img.shields.io/npm/dm/andrud?style=for-the-badge&color=%2392FE9D&labelColor=%23222" alt="npm downloads"></a>
|
|
6
|
+
<img src="https://img.shields.io/github/license/MurShidM01/andrud?style=for-the-badge&color=%23ff6b6b&labelColor=%23222" alt="license">
|
|
7
|
+
<a href="https://github.com/MurShidM01/andrud/stargazers"><img src="https://img.shields.io/github/stars/MurShidM01/andrud?style=for-the-badge&color=%23ffd93d&labelColor=%23222" alt="stars"></a>
|
|
8
|
+
<a href="https://github.com/MurShidM01/andrud/network/members"><img src="https://img.shields.io/github/forks/MurShidM01/andrud?style=for-the-badge&color=%236bcb77&labelColor=%23222" alt="forks"></a>
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
<p align="center">
|
|
12
|
+
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/Node.js-20+-green?style=for-the-badge&logo=node.js&logoColor=white" alt="node"></a>
|
|
13
|
+
<a href="https://www.typescriptlang.org/"><img src="https://img.shields.io/badge/TypeScript-5.4-blue?style=for-the-badge&logo=typescript&logoColor=white" alt="typescript"></a>
|
|
14
|
+
<a href="https://developer.android.com/studio"><img src="https://img.shields.io/badge/Android_Studio-3DDC84?style=for-the-badge&logo=android&logoColor=white" alt="android"></a>
|
|
15
|
+
<a href="https://kotlinlang.org/"><img src="https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white" alt="kotlin"></a>
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
<h1 align="center">Modern Android Project Scaffolding CLI</h1>
|
|
19
|
+
|
|
20
|
+
<p align="center">
|
|
21
|
+
<strong>andrud</strong> is a blazing-fast, interactive CLI tool for generating production-ready Android project structures in seconds. Built for developers who value speed, consistency, and modern Android development practices.
|
|
22
|
+
</p>
|
|
23
|
+
|
|
24
|
+
<p align="center">
|
|
25
|
+
<img src="https://raw.githubusercontent.com/MurShidM01/andrud/main/sc.png" width="800" alt="andrud demo">
|
|
26
|
+
</p>
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Features
|
|
31
|
+
|
|
32
|
+
| Feature | Description |
|
|
33
|
+
|---------|-------------|
|
|
34
|
+
| Blazing Fast | Generate complete Android projects in under 5 seconds |
|
|
35
|
+
| Multiple Templates | Kotlin, Java, Jetpack Compose, Native C++/NDK support |
|
|
36
|
+
| Interactive CLI | Beautiful prompts powered by @clack/prompts |
|
|
37
|
+
| Production Ready | Industry-standard Gradle configuration with latest versions |
|
|
38
|
+
| TypeScript | Fully typed codebase for reliability |
|
|
39
|
+
| Customizable | Configure SDK versions, features, and more |
|
|
40
|
+
| Modern Android | Android 15 (SDK 35/36) with Jetpack libraries |
|
|
41
|
+
| Beautiful UI | Colorful terminal output with gradients |
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Templates
|
|
46
|
+
|
|
47
|
+
| Template | Language | UI Framework | Use Case |
|
|
48
|
+
|----------|----------|--------------|----------|
|
|
49
|
+
| kotlin-xml | Kotlin | XML Views | Traditional Android development |
|
|
50
|
+
| kotlin-compose | Kotlin | Jetpack Compose | Modern declarative UI |
|
|
51
|
+
| java-xml | Java | XML Views | Java projects & legacy codebases |
|
|
52
|
+
| native-cpp | Kotlin + C++ | XML Views | High-performance & game development |
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Quick Start
|
|
57
|
+
|
|
58
|
+
### Installation
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Install globally via npm
|
|
62
|
+
npm install -g andrud
|
|
63
|
+
|
|
64
|
+
# Verify installation
|
|
65
|
+
andrud --version
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Create a New Project
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Interactive mode (recommended)
|
|
72
|
+
andrud create
|
|
73
|
+
|
|
74
|
+
# With all options specified
|
|
75
|
+
andrud new MyApp -t kotlin-compose -p com.example.myapp -d ./projects
|
|
76
|
+
|
|
77
|
+
# Quick create with defaults
|
|
78
|
+
andrud new MyApp
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Available Commands
|
|
82
|
+
|
|
83
|
+
| Command | Description |
|
|
84
|
+
|---------|-------------|
|
|
85
|
+
| andrud create | Interactive project creation |
|
|
86
|
+
| andrud new name | Create project with name |
|
|
87
|
+
| andrud list | Show all available templates |
|
|
88
|
+
| andrud info template | View template details |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Usage Examples
|
|
93
|
+
|
|
94
|
+
### Interactive Project Creation
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
$ andrud create
|
|
98
|
+
|
|
99
|
+
? Enter your app name: MyAwesomeApp
|
|
100
|
+
? Enter package name: com.example.myawesomeapp
|
|
101
|
+
? Select template: kotlin-compose
|
|
102
|
+
? Project directory: ./projects
|
|
103
|
+
|
|
104
|
+
Generating project structure...
|
|
105
|
+
MyAwesomeApp created successfully!
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Create with Options
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
# Kotlin with Jetpack Compose
|
|
112
|
+
andrud new MyComposeApp -t kotlin-compose -p com.mydomain.app
|
|
113
|
+
|
|
114
|
+
# Kotlin with XML Views
|
|
115
|
+
andrud new MyKotlinApp -t kotlin-xml -p com.mydomain.app
|
|
116
|
+
|
|
117
|
+
# Java with XML Views
|
|
118
|
+
andrud new MyJavaApp -t java-xml -p com.mydomain.app
|
|
119
|
+
|
|
120
|
+
# Native C++ with NDK
|
|
121
|
+
andrud new MyNativeApp -t native-cpp -p com.mydomain.app
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### List Templates
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
$ andrud list
|
|
128
|
+
|
|
129
|
+
+----------------------------------------------------------+
|
|
130
|
+
| Android Project Templates |
|
|
131
|
+
+----------------------------------------------------------+
|
|
132
|
+
|
|
133
|
+
1. Kotlin with XML Layouts
|
|
134
|
+
Traditional Android Views with Kotlin...
|
|
135
|
+
|
|
136
|
+
2. Kotlin with Jetpack Compose
|
|
137
|
+
Modern declarative UI...
|
|
138
|
+
|
|
139
|
+
3. Java with XML Layouts
|
|
140
|
+
Traditional Android Views with Java...
|
|
141
|
+
|
|
142
|
+
4. Kotlin with Native C++/NDK
|
|
143
|
+
Native C++ development with JNI...
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## Project Structure
|
|
149
|
+
|
|
150
|
+
Generated projects include:
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
MyApp/
|
|
154
|
+
├── app/
|
|
155
|
+
│ ├── src/main/
|
|
156
|
+
│ │ ├── java/ # Java/Kotlin source files
|
|
157
|
+
│ │ ├── res/ # Resources (layouts, values, drawables)
|
|
158
|
+
│ │ ├── AndroidManifest.xml
|
|
159
|
+
│ │ └── ...
|
|
160
|
+
│ ├── build.gradle.kts # App-level build config
|
|
161
|
+
│ └── proguard-rules.pro
|
|
162
|
+
├── gradle/wrapper/ # Gradle wrapper files
|
|
163
|
+
├── build.gradle.kts # Root build config
|
|
164
|
+
├── settings.gradle.kts # Project settings
|
|
165
|
+
├── gradle.properties # Gradle properties
|
|
166
|
+
├── .gitignore
|
|
167
|
+
└── README.md
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Configuration
|
|
173
|
+
|
|
174
|
+
### SDK Versions
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
# Custom SDK versions
|
|
178
|
+
andrud new MyApp --min-sdk 24 --target-sdk 35
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Features
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
# Disable specific features
|
|
185
|
+
andrud new MyApp --no-git --no-readme
|
|
186
|
+
|
|
187
|
+
# Skip dependency installation
|
|
188
|
+
andrud new MyApp --skip-install
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Development
|
|
194
|
+
|
|
195
|
+
### Setup
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
# Clone the repository
|
|
199
|
+
git clone https://github.com/MurShidM01/andrud.git
|
|
200
|
+
cd andrud
|
|
201
|
+
|
|
202
|
+
# Install dependencies
|
|
203
|
+
npm install
|
|
204
|
+
|
|
205
|
+
# Build the project
|
|
206
|
+
npm run build
|
|
207
|
+
|
|
208
|
+
# Run in development mode
|
|
209
|
+
npm run dev -- create
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Available Scripts
|
|
213
|
+
|
|
214
|
+
| Script | Description |
|
|
215
|
+
|--------|-------------|
|
|
216
|
+
| npm run build | Build TypeScript to JavaScript |
|
|
217
|
+
| npm run dev | Build and run in development |
|
|
218
|
+
| npm run link | Link package globally for testing |
|
|
219
|
+
| npm test | Run tests |
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## Dependencies
|
|
224
|
+
|
|
225
|
+
| Package | Purpose |
|
|
226
|
+
|---------|---------|
|
|
227
|
+
| @clack/prompts | Beautiful interactive prompts |
|
|
228
|
+
| cac | Lightweight CLI argument parser |
|
|
229
|
+
| fs-extra | Enhanced file system operations |
|
|
230
|
+
| ora | Elegant terminal spinners |
|
|
231
|
+
| picocolors | Terminal colors |
|
|
232
|
+
| gradient-string | Gradient text effects |
|
|
233
|
+
| update-notifier | Check for updates |
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Tech Stack
|
|
238
|
+
|
|
239
|
+
<p align="center">
|
|
240
|
+
<img src="https://skillicons.dev/icons?i=nodejs,typescript,androidstudio,kotlin,gradle,npm" alt="Tech Stack">
|
|
241
|
+
</p>
|
|
242
|
+
|
|
243
|
+
---
|
|
244
|
+
|
|
245
|
+
## Contributing
|
|
246
|
+
|
|
247
|
+
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
248
|
+
|
|
249
|
+
1. Fork the repository
|
|
250
|
+
2. Create your feature branch (git checkout -b feature/amazing-feature)
|
|
251
|
+
3. Commit your changes (git commit -m 'Add amazing feature')
|
|
252
|
+
4. Push to the branch (git push origin feature/amazing-feature)
|
|
253
|
+
5. Open a Pull Request
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## License
|
|
258
|
+
|
|
259
|
+
This project is licensed under the MIT License - see the LICENSE file for details.
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## Acknowledgments
|
|
264
|
+
|
|
265
|
+
- Android Open Source Project
|
|
266
|
+
- Jetpack Compose
|
|
267
|
+
- Kotlin
|
|
268
|
+
- Gradle
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Contact
|
|
273
|
+
|
|
274
|
+
<p align="center">
|
|
275
|
+
<a href="https://github.com/MurShidM01/andrud/issues">
|
|
276
|
+
<img src="https://img.shields.io/badge/Issues-Open-green?style=for-the-badge&logo=github" alt="issues">
|
|
277
|
+
</a>
|
|
278
|
+
<a href="https://github.com/MurShidM01/andrud/discussions">
|
|
279
|
+
<img src="https://img.shields.io/badge/Discussions-Q%26A-blue?style=for-the-badge&logo=github" alt="discussions">
|
|
280
|
+
</a>
|
|
281
|
+
</p>
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
<p align="center">
|
|
286
|
+
<strong>Made with love by <a href="https://github.com/MurShidM01">MurShidM01</a></strong>
|
|
287
|
+
</p>
|
|
288
|
+
|
|
289
|
+
<p align="center">
|
|
290
|
+
<img src="https://img.shields.io/badge/JavaScript-ES2022-yellow?style=for-the-badge&logo=javascript&logoColor=black" alt="js">
|
|
291
|
+
<img src="https://img.shields.io/badge/PowerShell-7+-blue?style=for-the-badge&logo=powershell" alt="powershell">
|
|
292
|
+
</p>
|
|
293
|
+
|
|
294
|
+
<p align="center">
|
|
295
|
+
Star this repo if you find it useful!
|
|
307
296
|
</p>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/context.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|