Skip to content

Commit f2ff155

Browse files
committed
v0.5.0: Flutter - 17 skills, 5 rules, 12 MCP tools
New Flutter skills: mobile-flutter-project-setup, mobile-flutter-navigation, mobile-flutter-run-on-device, mobile-flutter-state-management. New rule: mobile-performance (cross-framework RN + Flutter). Made-with: Cursor
1 parent 03fbf78 commit f2ff155

14 files changed

Lines changed: 1256 additions & 26 deletions

File tree

.cursor-plugin/plugin.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"name": "mobile-app-developer-tools",
33
"displayName": "Mobile App Developer Tools",
4-
"version": "0.4.0",
5-
"description": "Mobile app development for Cursor, Claude Code, and MCP-compatible editors. 13 skills covering project setup, environment detection, device deployment, navigation, state management, component patterns, camera, AI, permissions, auth, push notifications, local storage, and API integration for React Native/Expo - plus 4 rules. Companion MCP server provides 12 tools.",
4+
"version": "0.5.0",
5+
"description": "Mobile app development for Cursor, Claude Code, and MCP-compatible editors. 17 skills covering React Native/Expo and Flutter - project setup, navigation, device deployment, state management, components, camera, AI, permissions, auth, push, storage, APIs - plus 5 rules. Companion MCP server provides 12 tools.",
66
"author": {
77
"name": "TMHSDigital",
88
"url": "https://github.com/TMHSDigital"

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@
22

33
All notable changes to this project will be documented in this file.
44

5+
## [0.5.0] - 2026-04-03
6+
7+
### Added
8+
9+
- **4 new Flutter skills**: `mobile-flutter-project-setup` (guided flutter create with structure, linting, packages, flavors), `mobile-flutter-navigation` (GoRouter, shell routes, auth guards, deep links), `mobile-flutter-run-on-device` (USB/wireless debugging, hot reload, build modes), `mobile-flutter-state-management` (Riverpod, Bloc, Provider patterns)
10+
- **1 new rule**: `mobile-performance` (cross-framework performance anti-patterns for React Native and Flutter)
11+
- Totals: 17 skills, 5 rules, 12 MCP tools
12+
513
## [0.4.0] - 2026-04-03
614

715
### Added

CLAUDE.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
44

55
## Project Overview
66

7-
The **Mobile App Developer Tools** Cursor plugin is at **v0.4.0**. It helps developers go from zero to a running mobile app on their phone. Currently supports React Native/Expo with **13 skills**, **4 rules**, and a companion MCP server exposing **12 tools**. Flutter support is planned for v0.5.0.
7+
The **Mobile App Developer Tools** Cursor plugin is at **v0.5.0**. It helps developers go from zero to a running mobile app on their phone. Supports React Native/Expo and Flutter with **17 skills**, **5 rules**, and a companion MCP server exposing **12 tools**.
88

99
## Plugin Architecture
1010

@@ -16,7 +16,9 @@ mcp-server/ - MCP server with 12 tools
1616
packages/mobile-dev-tools/ - NPM package (stub for name claim)
1717
```
1818

19-
## Skills (13 total)
19+
## Skills (17 total)
20+
21+
### React Native / Expo
2022

2123
| Skill | Purpose |
2224
| --- | --- |
@@ -34,14 +36,24 @@ packages/mobile-dev-tools/ - NPM package (stub for name claim)
3436
| mobile-local-storage | AsyncStorage, expo-sqlite, expo-secure-store, MMKV; migrations and data cleanup |
3537
| mobile-api-integration | REST/GraphQL clients, React Query, auth headers, retry, offline queue, optimistic updates |
3638

37-
## Rules (4 total)
39+
### Flutter
40+
41+
| Skill | Purpose |
42+
| --- | --- |
43+
| mobile-flutter-project-setup | Guided flutter create with structure, linting, packages, flavors |
44+
| mobile-flutter-navigation | GoRouter: declarative routing, shell routes for tabs, auth guards, deep linking |
45+
| mobile-flutter-run-on-device | USB/wireless debugging, hot reload vs restart, build modes, troubleshooting |
46+
| mobile-flutter-state-management | Riverpod (recommended), Bloc, Provider, setState; async data, code generation |
47+
48+
## Rules (5 total)
3849

3950
| Rule | Scope | Purpose |
4051
| --- | --- | --- |
4152
| mobile-secrets.mdc | Global | Flags API keys, signing credentials, keystore passwords, Firebase config, EAS tokens |
4253
| mobile-platform-check.mdc | `.ts`, `.tsx` | Flags platform-specific APIs used without Platform.OS or Platform.select() guards |
4354
| mobile-image-assets.mdc | `.ts`, `.tsx`, `.json` | Flags oversized images, unoptimized formats, missing density variants, uncached remote images |
4455
| mobile-env-safety.mdc | `.ts`, `.tsx`, `.json` | Flags hardcoded production endpoints, missing EXPO_PUBLIC_ prefix, server-only secrets in client code |
56+
| mobile-performance.mdc | `.ts`, `.tsx`, `.dart` | Flags inline styles, missing list keys, unnecessary re-renders (RN); missing const constructors, inline widgets (Flutter) |
4557

4658
## Companion MCP Server
4759

README.md

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
</p>
1010

1111
<p align="center">
12-
<a href="https://github.com/TMHSDigital/Mobile-App-Developer-Tools/releases"><img src="https://img.shields.io/badge/version-0.4.0-0A84FF?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMiAyTDIyIDEyTDEyIDIyTDIgMTJaIi8+PC9zdmc+" alt="Release"></a>
12+
<a href="https://github.com/TMHSDigital/Mobile-App-Developer-Tools/releases"><img src="https://img.shields.io/badge/version-0.5.0-0A84FF?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMiAyTDIyIDEyTDEyIDIyTDIgMTJaIi8+PC9zdmc+" alt="Release"></a>
1313
<a href="https://creativecommons.org/licenses/by-nc-nd/4.0/"><img src="https://img.shields.io/badge/License-CC%20BY--NC--ND%204.0-lightgrey?style=for-the-badge" alt="License"></a>
1414
<a href="https://github.com/TMHSDigital/Mobile-App-Developer-Tools/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/TMHSDigital/Mobile-App-Developer-Tools/ci.yml?branch=main&label=CI&logo=githubactions&style=for-the-badge" alt="CI"></a>
1515
<a href="https://github.com/TMHSDigital/Mobile-App-Developer-Tools/actions/workflows/validate.yml"><img src="https://img.shields.io/github/actions/workflow/status/TMHSDigital/Mobile-App-Developer-Tools/validate.yml?branch=main&label=Validate&logo=githubactions&style=for-the-badge" alt="Validate"></a>
@@ -24,7 +24,7 @@
2424
---
2525

2626
<p align="center">
27-
<strong>13 skills</strong> &nbsp;&bull;&nbsp; <strong>4 rules</strong> &nbsp;&bull;&nbsp; <strong>12 MCP tools</strong>
27+
<strong>17 skills</strong> &nbsp;&bull;&nbsp; <strong>5 rules</strong> &nbsp;&bull;&nbsp; <strong>12 MCP tools</strong>
2828
</p>
2929

3030
<p align="center">
@@ -35,7 +35,7 @@
3535

3636
## Overview
3737

38-
Mobile App Developer Tools is a **Cursor** plugin by **TMHSDigital** that packages agent skills, editor rules, and a TypeScript **MCP server** (`mcp-server/`) so you can scaffold, run, and debug mobile apps without leaving the IDE. Currently at **v0.4.0** with thirteen skills, four rules, and twelve live MCP tools. Flutter support is planned for v0.5.0.
38+
Mobile App Developer Tools is a **Cursor** plugin by **TMHSDigital** that packages agent skills, editor rules, and a TypeScript **MCP server** (`mcp-server/`) so you can scaffold, run, and debug mobile apps without leaving the IDE. Currently at **v0.5.0** with seventeen skills (React Native/Expo + Flutter), five rules, and twelve live MCP tools.
3939

4040
<br>
4141
<table>
@@ -46,8 +46,8 @@ Mobile App Developer Tools is a **Cursor** plugin by **TMHSDigital** that packag
4646

4747
| Layer | Role |
4848
| --- | --- |
49-
| **Skills** | Guided workflows: project scaffolding, environment setup, device deployment, navigation, state, components, camera, AI, permissions, auth, push, storage, APIs |
50-
| **Rules** | Guardrails: `mobile-secrets` catches hardcoded secrets; `mobile-platform-check` flags missing guards; `mobile-image-assets` flags bloat; `mobile-env-safety` flags env issues |
49+
| **Skills** | 17 guided workflows for React Native/Expo and Flutter: project setup, navigation, device deploy, state, components, camera, AI, permissions, auth, push, storage, APIs |
50+
| **Rules** | 5 guardrails: secrets, platform guards, image bloat, env safety, performance anti-patterns (RN + Flutter) |
5151
| **MCP** | Twelve tools for environment checks, project creation, device connection, screen/component generation, dependency install, permissions, AI, build health, push, deep links, dev reset |
5252

5353
</td>
@@ -61,7 +61,7 @@ Mobile App Developer Tools is a **Cursor** plugin by **TMHSDigital** that packag
6161
| **Author** | [TMHSDigital](https://github.com/TMHSDigital) |
6262
| **Repository** | [github.com/TMHSDigital/Mobile-App-Developer-Tools](https://github.com/TMHSDigital/Mobile-App-Developer-Tools) |
6363
| **Runtime** | Node 20+ for MCP server |
64-
| **Framework** | Expo (React Native) + TypeScript |
64+
| **Framework** | Expo (React Native) + Flutter |
6565

6666
</td>
6767
</tr>
@@ -152,10 +152,10 @@ Open Cursor and ask:
152152

153153
## Skills
154154

155-
All 13 skills are production-ready. Names match the folder under `skills/`.
155+
All 17 skills are production-ready. Names match the folder under `skills/`.
156156

157157
<details>
158-
<summary><strong>All 13 skills</strong></summary>
158+
<summary><strong>React Native / Expo skills (13)</strong></summary>
159159

160160
| Skill | Framework | What it does |
161161
| --- | --- | --- |
@@ -175,6 +175,18 @@ All 13 skills are production-ready. Names match the folder under `skills/`.
175175

176176
</details>
177177

178+
<details>
179+
<summary><strong>Flutter skills (4)</strong></summary>
180+
181+
| Skill | What it does |
182+
| --- | --- |
183+
| `mobile-flutter-project-setup` | Guided `flutter create` with feature-first structure, linting, packages, flavors |
184+
| `mobile-flutter-navigation` | GoRouter: declarative routing, shell routes for tabs, auth guards, deep linking |
185+
| `mobile-flutter-run-on-device` | USB/wireless debugging, hot reload vs restart, build modes, troubleshooting |
186+
| `mobile-flutter-state-management` | Riverpod (recommended), Bloc, Provider, setState; async data, code generation |
187+
188+
</details>
189+
178190
**Example prompts** - one per skill:
179191

180192
| Skill | Try this |
@@ -192,22 +204,27 @@ All 13 skills are production-ready. Names match the folder under `skills/`.
192204
| `mobile-push-notifications` | "Set up push notifications that open a specific screen on tap" |
193205
| `mobile-local-storage` | "I need offline storage for a todo list with secure login" |
194206
| `mobile-api-integration` | "Connect to my REST API with auth headers and offline support" |
207+
| `mobile-flutter-project-setup` | "Create a new Flutter app with Riverpod and GoRouter" |
208+
| `mobile-flutter-navigation` | "Add tab navigation with GoRouter in my Flutter app" |
209+
| `mobile-flutter-run-on-device` | "My Android phone doesn't show up in flutter devices" |
210+
| `mobile-flutter-state-management` | "Should I use Riverpod or Bloc for my Flutter app?" |
195211

196212
---
197213

198214
## Rules
199215

200-
All 4 rules are production-ready.
216+
All 5 rules are production-ready.
201217

202218
<details>
203-
<summary><strong>All 4 rules</strong></summary>
219+
<summary><strong>All 5 rules</strong></summary>
204220

205221
| Rule | Scope | What it catches |
206222
| --- | --- | --- |
207223
| `mobile-secrets` | Always on | API keys, signing credentials, keystore passwords, Firebase config, `.p8`/`.p12` files, EAS tokens |
208224
| `mobile-platform-check` | `.ts`, `.tsx` | Platform-specific APIs (BackHandler, ToastAndroid, StatusBar methods) used without `Platform.OS` or `Platform.select()` guards |
209225
| `mobile-image-assets` | `.ts`, `.tsx`, `.json` | Oversized images (>500KB), unoptimized formats (BMP, TIFF), missing `@2x`/`@3x` variants, uncached remote images |
210226
| `mobile-env-safety` | `.ts`, `.tsx`, `.json` | Hardcoded production endpoints, missing `EXPO_PUBLIC_` prefix, server-only secrets in client code |
227+
| `mobile-performance` | `.ts`, `.tsx`, `.dart` | Inline styles, missing list keys, ScrollView for long lists (RN); missing const constructors, inline widgets (Flutter) |
211228

212229
</details>
213230

@@ -293,7 +310,7 @@ Plugin manifest: [`.cursor-plugin/plugin.json`](.cursor-plugin/plugin.json).
293310

294311
## Configuration
295312

296-
No API keys are required for v0.4.0. All tools work locally.
313+
No API keys are required for v0.5.0. All tools work locally.
297314

298315
Future versions may use:
299316

@@ -314,8 +331,8 @@ Summary aligned with [ROADMAP.md](ROADMAP.md):
314331
| **v0.1.0** | Zero to Phone | 3 skills, 1 rule, 3 MCP tools | |
315332
| **v0.2.0** | Navigate & State | 6 skills, 2 rules, 6 MCP tools | |
316333
| **v0.3.0** | Camera & AI | 9 skills, 3 rules, 9 MCP tools | |
317-
| **v0.4.0** | Users & Data | 13 skills, 4 rules, 12 MCP tools | **Current** |
318-
| **v0.5.0** | Flutter | Flutter project setup, navigation, device deploy, state management | |
334+
| **v0.4.0** | Users & Data | 13 skills, 4 rules, 12 MCP tools | |
335+
| **v0.5.0** | Flutter | 17 skills, 5 rules, 12 MCP tools | **Current** |
319336
| **v0.6.0** | Ship It | App store prep, iOS and Android submission | |
320337
| **v0.7.0** | Grow | Monetization, deep links, bundle analysis | |
321338
| **v1.0.0** | Stable | 22 skills, 7 rules, 18 MCP tools | |

ROADMAP.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
| **v0.1.0** | Zero to Phone | 3 | 1 | 3 | Project scaffolding, env check, run-on-device, secrets rule |
88
| **v0.2.0** | Navigate & State | +3 | +1 | +3 | Navigation setup, state management, component generation, platform-check rule |
99
| **v0.3.0** | Camera & AI | +3 | +1 | +3 | Camera integration, AI features, permissions skill, image-assets rule |
10-
| **v0.4.0** | Users & Data | +4 | +1 | +3 | Auth, push notifications, local storage, API integration, env-safety rule **(current)** |
11-
| **v0.5.0** | Flutter | +4 | +1 | +0 | Flutter project setup, navigation, run-on-device, state management, performance rule |
10+
| **v0.4.0** | Users & Data | +4 | +1 | +3 | Auth, push notifications, local storage, API integration, env-safety rule |
11+
| **v0.5.0** | Flutter | +4 | +1 | +0 | Flutter project setup, navigation, run-on-device, state management, performance rule **(current)** |
1212
| **v0.6.0** | Ship It | +3 | +1 | +3 | App store prep, iOS submission, Android submission, accessibility rule |
1313
| **v0.7.0** | Grow | +2 | +0 | +3 | Monetization, deep links, build-for-store, screenshots, bundle analysis |
1414
| **v1.0.0** | Stable | +0 | +0 | +0 | Polish, docs, production release: 22 skills, 7 rules, 18 MCP tools |
@@ -58,7 +58,7 @@
5858
- `mobile_integrateAI` - Add AI API integration with error handling
5959
- `mobile_checkBuildHealth` - Verify the project builds cleanly
6060

61-
## v0.4.0 - Users & Data (current)
61+
## v0.4.0 - Users & Data
6262

6363
**Skills:**
6464
- `mobile-auth-setup` (Shared) - Auth patterns with Supabase, Firebase, Clerk
@@ -74,7 +74,7 @@
7474
- `mobile_configureDeepLinks` - Set up universal links and app links
7575
- `mobile_resetDevEnvironment` - Clear caches, reinstall pods, reset Metro/Gradle
7676

77-
## v0.5.0 - Flutter
77+
## v0.5.0 - Flutter (current)
7878

7979
**Skills:**
8080
- `mobile-project-setup` (Flutter) - Guided `flutter create` with recommended structure

mcp-server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@tmhs/mobile-mcp",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "MCP server for mobile app development - 12 tools for environment checks, project scaffolding, device deployment, screen/component generation, dependency installation, permissions, AI integration, build health, push notifications, deep links, and dev environment reset.",
55
"type": "module",
66
"main": "dist/index.js",

mcp-server/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import { register as registerResetDevEnvironment } from "./tools/resetDevEnviron
1818

1919
const server = new McpServer({
2020
name: "mobile-mcp",
21-
version: "0.4.0",
21+
version: "0.5.0",
2222
});
2323

2424
registerCheckDevEnvironment(server);

packages/mobile-dev-tools/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@tmhs/mobile-dev-tools",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "CLI and utilities for mobile app development - environment checks, project scaffolding, store metadata validation.",
55
"type": "module",
66
"main": "dist/index.js",
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
export const VERSION = "0.4.0";
1+
export const VERSION = "0.5.0";
22

33
export const PACKAGE_NAME = "@tmhs/mobile-dev-tools";

0 commit comments

Comments
 (0)