packwise-skills 1.0.0

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 (51) hide show
  1. package/.cursorrules +23 -0
  2. package/CLAUDE.md +25 -0
  3. package/README.md +295 -0
  4. package/audit.md +224 -0
  5. package/bin/packwise.js +155 -0
  6. package/package.json +31 -0
  7. package/skill.md +719 -0
  8. package/sub-skills/ai/local-llm.md +183 -0
  9. package/sub-skills/ai/python-ml.md +164 -0
  10. package/sub-skills/backend/go-server.md +184 -0
  11. package/sub-skills/backend/java-spring.md +241 -0
  12. package/sub-skills/backend/node-server.md +164 -0
  13. package/sub-skills/backend/php-laravel.md +175 -0
  14. package/sub-skills/backend/python-server.md +164 -0
  15. package/sub-skills/backend/rust-backend.md +118 -0
  16. package/sub-skills/cli/python-cli.md +236 -0
  17. package/sub-skills/cli/sdk-library.md +497 -0
  18. package/sub-skills/cloud/ci-cd-pipelines.md +350 -0
  19. package/sub-skills/cloud/docker.md +191 -0
  20. package/sub-skills/cloud/kubernetes.md +277 -0
  21. package/sub-skills/cloud/payment-integration.md +307 -0
  22. package/sub-skills/cross-platform/multiplatform.md +252 -0
  23. package/sub-skills/desktop/electron.md +783 -0
  24. package/sub-skills/desktop/game-dev.md +443 -0
  25. package/sub-skills/desktop/native-app.md +123 -0
  26. package/sub-skills/desktop/scenarios.md +443 -0
  27. package/sub-skills/desktop/smart-platforms.md +324 -0
  28. package/sub-skills/desktop/tauri.md +428 -0
  29. package/sub-skills/desktop/vr-ar.md +252 -0
  30. package/sub-skills/desktop/web-to-desktop.md +153 -0
  31. package/sub-skills/embedded/car-infotainment.md +129 -0
  32. package/sub-skills/embedded/esp32.md +184 -0
  33. package/sub-skills/embedded/ros.md +150 -0
  34. package/sub-skills/embedded/stm32.md +160 -0
  35. package/sub-skills/mobile/android.md +322 -0
  36. package/sub-skills/mobile/capacitor.md +232 -0
  37. package/sub-skills/mobile/flutter-mobile.md +138 -0
  38. package/sub-skills/mobile/harmonyos.md +150 -0
  39. package/sub-skills/mobile/ios.md +245 -0
  40. package/sub-skills/mobile/react-native.md +443 -0
  41. package/sub-skills/mobile/wearables.md +230 -0
  42. package/sub-skills/plugins/browser-extension.md +308 -0
  43. package/sub-skills/plugins/jetbrains-plugin.md +226 -0
  44. package/sub-skills/plugins/vscode-extension.md +204 -0
  45. package/sub-skills/security/security-tools.md +174 -0
  46. package/sub-skills/web/monorepo.md +274 -0
  47. package/sub-skills/web/pwa.md +220 -0
  48. package/sub-skills/web/serverless-edge.md +295 -0
  49. package/sub-skills/web/spa.md +266 -0
  50. package/sub-skills/web/ssr.md +228 -0
  51. package/sub-skills/web/wasm.md +243 -0
@@ -0,0 +1,324 @@
1
+ # Smart Platform Build Sub-Skill
2
+
3
+ Build apps for smart TVs, automotive infotainment, and other non-phone/tablet platforms.
4
+
5
+ **Current versions**: Android TV 14 / tvOS 18 / webOS 24 / Tizen 8.0 / CarPlay / Android Auto (2025-2026)
6
+
7
+ ---
8
+
9
+ ## Android TV / Google TV
10
+
11
+ ### When to Use
12
+
13
+ - Smart TV applications (streaming, gaming, information display)
14
+ - Google TV launcher integration
15
+ - Large-screen optimized UI
16
+
17
+ ### Prerequisites
18
+
19
+ - Android Studio + Android TV SDK
20
+ - JDK 17
21
+ - Android TV emulator or Fire TV device
22
+
23
+ ### Build
24
+
25
+ ```kotlin
26
+ // build.gradle.kts
27
+ android {
28
+ defaultConfig {
29
+ minSdk = 21 // Android TV minimum
30
+ targetSdk = 34
31
+ }
32
+ }
33
+
34
+ dependencies {
35
+ // Leanback UI library (TV-optimized)
36
+ implementation("androidx.leanback:leanback:1.2.0")
37
+ // Media playback
38
+ implementation("androidx.media3:media3-exoplayer:1.5.0")
39
+ }
40
+ ```
41
+
42
+ ```xml
43
+ <!-- AndroidManifest.xml — TV-specific -->
44
+ <application>
45
+ <activity
46
+ android:name=".MainActivity"
47
+ android:banner="@drawable/tv_banner"
48
+ android:icon="@drawable/tv_icon"
49
+ android:logo="@drawable/tv_logo">
50
+ <intent-filter>
51
+ <action android:name="android.intent.action.MAIN" />
52
+ <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
53
+ </intent-filter>
54
+ </activity>
55
+
56
+ <!-- Required: declare as TV app -->
57
+ <uses-feature
58
+ android:name="android.software.leanback"
59
+ android:required="true" />
60
+ <!-- Touchscreen NOT required for TV -->
61
+ <uses-feature
62
+ android:name="android.hardware.touchscreen"
63
+ android:required="false" />
64
+ </application>
65
+ ```
66
+
67
+ ```bash
68
+ # Build
69
+ ./gradlew assembleRelease
70
+ # Output: app/build/outputs/apk/release/app-release.apk
71
+
72
+ # Distribute: Google Play (TV section) or Amazon Appstore (Fire TV)
73
+ ```
74
+
75
+ ### Common Pitfalls
76
+
77
+ | Issue | Fix |
78
+ |-------|-----|
79
+ | App not showing on TV | Add `LEANBACK_LAUNCHER` intent filter; declare `android.software.leanback` |
80
+ | D-pad navigation broken | Use `Leanback` library; implement focus handling |
81
+ | No touchscreen on TV | All interactions must work with D-pad/remote |
82
+ | Banner image required | Provide 320x180 banner for TV launcher |
83
+
84
+ ---
85
+
86
+ ## Apple tvOS
87
+
88
+ ### When to Use
89
+
90
+ - Apple TV apps (streaming, gaming, fitness)
91
+ - Integration with Apple ecosystem (AirPlay, HomeKit)
92
+ - SwiftUI-based large-screen apps
93
+
94
+ ### Prerequisites
95
+
96
+ - macOS + Xcode 15+
97
+ - Apple Developer account ($99/year)
98
+ - Apple TV device or simulator
99
+
100
+ ### Build
101
+
102
+ ```swift
103
+ // tvOS app with SwiftUI
104
+ import SwiftUI
105
+
106
+ @main
107
+ struct MyTVApp: App {
108
+ var body: some Scene {
109
+ WindowGroup {
110
+ ContentView()
111
+ .focusable() // D-pad navigation
112
+ }
113
+ }
114
+ }
115
+ ```
116
+
117
+ ```bash
118
+ # Build
119
+ xcodebuild -scheme MyApp-tvOS -configuration Release -sdk appletvos archive -archivePath build/MyApp.xcarchive
120
+
121
+ # Or: Product → Archive → Distribute → App Store Connect
122
+ ```
123
+
124
+ ### Common Pitfalls
125
+
126
+ | Issue | Fix |
127
+ |-------|-----|
128
+ | Focus navigation issues | Use `@FocusState` in SwiftUI; test with Siri Remote |
129
+ | No keyboard input | Design for on-screen keyboard; use dictation |
130
+ | App size limit | 4GB maximum for tvOS apps |
131
+ | Top Shelf extension | Implement for rich content when app is in top row |
132
+
133
+ ---
134
+
135
+ ## Samsung Tizen (Smart TV / Wearable)
136
+
137
+ ### When to Use
138
+
139
+ - Samsung Smart TV apps (market leader in TVs)
140
+ - Samsung wearable apps (Galaxy Watch 3 and earlier)
141
+ - Legacy platform support
142
+
143
+ ### Build
144
+
145
+ ```bash
146
+ # Tizen Studio
147
+ tizen build -t mobile -c llvm -C Debug # Wearable
148
+ tizen build -t tv -c llvm -C Debug # Smart TV
149
+
150
+ # Package
151
+ tizen package -t wgt -s certificate-profile
152
+ # Output: .wgt file for Samsung Galaxy Store
153
+ ```
154
+
155
+ ### Web Apps on Tizen
156
+
157
+ ```html
158
+ <!-- Tizen supports web-based TV apps -->
159
+ <!-- config.xml -->
160
+ <widget xmlns="http://www.w3.org/ns/widgets" id="http://example.com/myapp" version="1.0.0">
161
+ <name>My TV App</name>
162
+ <content src="index.html" />
163
+ <tizen:application id="your-app-id" package="your-package" required_version="8.0"/>
164
+ </widget>
165
+ ```
166
+
167
+ ---
168
+
169
+ ## LG webOS (Smart TV)
170
+
171
+ ### When to Use
172
+
173
+ - LG Smart TV applications
174
+ - Second largest smart TV platform globally
175
+
176
+ ### Build
177
+
178
+ ```bash
179
+ # Install webOS SDK (webOS TV SDK)
180
+ # webOS TV apps are web-based (HTML/CSS/JS)
181
+
182
+ # Create project
183
+ ares-generate -t basic my-tv-app
184
+
185
+ # Package
186
+ ares-package my-tv-app
187
+ # Output: .ipk file
188
+
189
+ # Install on TV (developer mode must be enabled)
190
+ ares-install --device tv my-tv-app_1.0.0_all.ipk
191
+
192
+ # Launch
193
+ ares-launch --device tv com.example.mytvapp
194
+ ```
195
+
196
+ ### webOS Architecture
197
+
198
+ ```
199
+ webOS TV App = Web Application (HTML5 + CSS3 + JavaScript)
200
+ ├── index.html
201
+ ├── appinfo.json ← App metadata
202
+ ├── assets/
203
+ └── lib/
204
+ └── webOSTV.js ← webOS TV API library
205
+ ```
206
+
207
+ ```json
208
+ // appinfo.json
209
+ {
210
+ "id": "com.example.mytvapp",
211
+ "version": "1.0.0",
212
+ "vendor": "My Company",
213
+ "type": "web",
214
+ "main": "index.html",
215
+ "icon": "icon.png",
216
+ "largeIcon": "largeIcon.png"
217
+ }
218
+ ```
219
+
220
+ ---
221
+
222
+ ## CarPlay / Android Auto
223
+
224
+ ### When to Use
225
+
226
+ - Navigation apps
227
+ - Music/podcast/audio apps
228
+ - Messaging apps (voice-driven)
229
+ - EV charging apps
230
+
231
+ ### CarPlay (Apple)
232
+
233
+ ```swift
234
+ // Requires Apple CarPlay entitlement (apply at developer.apple.com)
235
+ // Only for: Navigation, Audio, Messaging, EV Charging, Fueling, Driving Task, Quick Ordering
236
+ // UI provided by CarPlay framework — limited customization
237
+
238
+ import CarPlay
239
+
240
+ class AppDelegate: NSObject, UIApplicationDelegate, CPApplicationDelegate {
241
+ func application(_ application: UIApplication,
242
+ didConnect carInterfaceController: CPInterfaceController,
243
+ to window: CPWindow) {
244
+ // Set up CarPlay scene
245
+ }
246
+ }
247
+ ```
248
+
249
+ ### Android Auto
250
+
251
+ ```xml
252
+ <!-- AndroidManifest.xml -->
253
+ <meta-data
254
+ android:name="com.google.android.gms.car.application"
255
+ android:resource="@xml/automotive_app_desc" />
256
+
257
+ <!-- res/xml/automotive_app_desc.xml -->
258
+ <automotiveApp>
259
+ <uses name="media" /> <!-- Audio apps -->
260
+ <uses name="template" /> <!-- Navigation, messaging -->
261
+ </automotiveApp>
262
+ ```
263
+
264
+ ### Common Pitfalls
265
+
266
+ | Issue | Fix |
267
+ |-------|-----|
268
+ | CarPlay entitlement rejected | Only approved app categories are accepted; apply early |
269
+ | Android Auto distraction guidelines | No video; no text input while driving; voice-only interaction |
270
+ | Simulator testing | Use Xcode CarPlay Simulator (CarPlay) / Desktop Head Unit (Android Auto) |
271
+ | Limited UI customization | Both platforms use template-based UI; no custom layouts |
272
+
273
+ ---
274
+
275
+ ## Raspberry Pi / Linux SBC
276
+
277
+ ### When to Use
278
+
279
+ - Digital signage
280
+ - IoT dashboards
281
+ - Kiosk applications
282
+ - Home automation displays
283
+
284
+ ### Build
285
+
286
+ ```bash
287
+ # Cross-compile for ARM
288
+ # Electron:
289
+ npx electron-builder --linux --arm64 # Raspberry Pi 4/5 (64-bit)
290
+ npx electron-builder --linux --armv7l # Raspberry Pi 3 (32-bit)
291
+
292
+ # Tauri:
293
+ cargo tauri build --target aarch64-unknown-linux-gnu
294
+
295
+ # .NET:
296
+ dotnet publish -r linux-arm64 --self-contained
297
+
298
+ # Flutter:
299
+ flutter build linux --target-arch arm64
300
+ ```
301
+
302
+ ### Packaging for Raspberry Pi OS
303
+
304
+ ```bash
305
+ # .deb package (native to Raspberry Pi OS/Debian)
306
+ dpkg-deb --build myapp-deb myapp_1.0.0_arm64.deb
307
+
308
+ # Install on Pi
309
+ sudo dpkg -i myapp_1.0.0_arm64.deb
310
+ ```
311
+
312
+ ---
313
+
314
+ ## Selection Guide
315
+
316
+ | Platform | App Type | Language | Distribution |
317
+ |----------|----------|----------|-------------|
318
+ | Android TV / Google TV | Streaming, gaming, info | Kotlin/Java | Google Play |
319
+ | Apple TV | Streaming, fitness, gaming | Swift | App Store |
320
+ | Samsung Tizen TV | Streaming, gaming | C# / Web (JS) | Samsung Apps |
321
+ | LG webOS TV | Streaming, gaming | JavaScript (Web) | LG Content Store |
322
+ | CarPlay | Navigation, audio, messaging | Swift | App Store (entitlement required) |
323
+ | Android Auto | Navigation, audio, messaging | Kotlin/Java | Google Play |
324
+ | Raspberry Pi | Kiosk, signage, IoT | Any | .deb / direct install |