fs-mobile-api

Audita el diseño de networking/API de una app Expo/React Native — cliente HTTP centralizado, timeouts, retry con backoff, manejo de errores, refresh token, paginación, cache, cancelación de requests y conciencia de conectividad. Revisión estática de código (grep de patrones fetch/axios). Usar cuando el usuario pida auditar/mejorar el cliente de API, revisar manejo de refresh token, timeouts, retry, paginación o caching de requests en una app móvil.

fernandoserra/skills1 installsMITSynced Aug 27

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: fs-mobile-api
description: Audita el diseño de networking/API de una app Expo/React Native — cliente HTTP centralizado, timeouts, retry con backoff, manejo de errores, refresh token, paginación, cache, cancelación de requests y conciencia de conectividad. Revisión estática de código (grep de patrones fetch/axios). Usar cuando el usuario pida auditar/mejorar el cliente de API, revisar manejo de refresh token, timeouts, retry, paginación o caching de requests en una app móvil.
license: MIT
---

# fs-mobile-api

Auditoría **estática** del diseño de networking de una app Expo/React Native — buenas prácticas de cliente HTTP, no seguridad de red (eso es `fs-mobile-security`, categoría `MASVS-NETWORK`) ni causas de lentitud (eso es `fs-mobile-performance`, categoría `PERF-NETWORK`).

## Relación con otras skills

- `fs-mobile-performance` (`PERF-NETWORK`) mira los mismos patrones de red desde el ángulo de performance: por qué algo es lento o desperdicia trabajo. Esta skill los mira desde el ángulo de diseño/robustez del cliente API: si el mecanismo (retry, cache, refresh, cancelación) existe y está bien construido. Quedan deliberadamente separadas — puede haber hallazgos parecidos con distinto enfoque si se corren ambas.
- `fs-mobile-security` (`MASVS-NETWORK`) audita que el tráfico use TLS y no tenga cleartext/pinning ausente — no se solapa con esta skill.

## Fuente de verdad de los controles

`assets/api-checklist.md` — 10 categorías (cliente centralizado, timeouts, retry, errores, refresh token, paginación, cache, cancelación, conciencia de conectividad, organización de endpoints), todas verificables por código estático.

## Proceso

1. **Ubicar el cliente HTTP del proyecto**: buscar un archivo central de networking (`src/utils/http.js` si viene del preset `classic-stack` de `fs-mobile-scaffold`, o `src/api/`, `src/services/`), y si no existe ninguno, confirmarlo explícitamente (`API-CLIENT-1` sale ❌ directo).
2. **Recorrer `assets/api-checklist.md` categoría por categoría**, aplicando cada control sobre el cliente central y sobre las pantallas que hacen fetch directo si no hay uno.
3. **Registrar por control**:
   - Estado: ✅ cumple / ⚠️ cumple parcialmente / ❌ no cumple / N/A no aplica (ej. app sin ninguna operación no idempotente relevante para `API-RETRY-2`)
   - Evidencia: `archivo:línea` concreto
   - Sugerencia breve si el estado es ⚠️ o ❌
4. **No aplicar fixes automáticamente** — reportar primero y esperar confirmación, salvo que el usuario ya haya pedido explícitamente que se corrija.

## Formato del reporte

Una tabla por categoría, mismo estilo que las demás skills de auditoría:

| Control | Estado | Evidencia | Sugerencia |
|---|---|---|---|
| API-TIMEOUT-1 | ❌ | `src/utils/http.js:22` — `fetch(url, {...})` sin `AbortController`/`timeout` | Envolver el `fetch` con un `AbortController` y `setTimeout` (ej. 15s), abortando y lanzando un error distinguible de un 5xx |
| API-REFRESH-1 | ❌ | `src/utils/http.js:27-30` — un 401 se propaga como error genérico, no dispara refresh | Agregar interceptor que detecte 401, llame al endpoint de refresh y reintente una vez antes de desloguear |

Cerrar con un resumen: cuántos controles evaluados, cuántos ✅/⚠️/❌/N/A, y los 2-3 hallazgos de mayor impacto primero (priorizar lo que puede causar pérdida de datos del usuario o logouts inesperados, no detalles menores).

More Performance skills

seo-audit

coreyhaines31/marketingskills

When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO audit," "technical SEO," "why am I not ranking," "SEO issues," "on-page SEO," "meta tags review," "SEO health check," "my traffic dropped," "lost rankings," "not showing up in Google," "site isn't ranking," "Google update hit me," "page speed," "core web vitals," "crawl errors," or "indexing issues." Use this even if the user just says something vague like "my SEO is bad" or "help with SEO" — start with an audit. For building pages at scale to target keywords, see programmatic-seo. For adding structured data, see schema. For AI search optimization, see ai-seo.

195.1k

competitor-profiling

coreyhaines31/marketingskills

When the user wants to research, profile, or analyze competitors from their URLs. Also use when the user mentions 'competitor profile,' 'competitor research,' 'competitor analysis,' 'profile this competitor,' 'analyze competitor,' 'competitive intelligence,' 'competitor deep dive,' 'who are my competitors,' 'competitor landscape,' 'competitor dossier,' 'competitive audit,' or 'research these competitors.' Input is a list of competitor URLs. Output is structured competitor profile markdown files. For creating comparison/alternative pages from profiles, see competitors. For sales-specific battle cards, see sales-enablement.

65.8k

prospecting

coreyhaines31/marketingskills

When the user wants to find, qualify, and build a list of prospects to reach out to — across B2B SaaS, general B2B, or local small businesses. Also use when the user mentions "prospecting," "build a prospect list," "find prospects," "find leads," "lead gen list," "find SaaS companies that," "find B2B companies," "find local businesses," "ICP-fit accounts," "who should we go after," "outbound list," "target account list," "find clients near me," "businesses without websites," "prospect research," "qualified leads," "find my first customers," "early adopters," "design partners," "beta users," or "who has this problem." Use this for the list-building and qualification phase. For writing the outbound copy after the list is built, see cold-email. For deep competitive research on specific accounts, see competitor-profiling.

42.1k

← All Performance skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY