Help us improve
Share bugs, ideas, or general feedback.
From first-plan
Detects Node/TypeScript stacks (Next.js, NestJS, Vite SPA, Express, Astro, Remix, Nuxt, monorepos) from package.json and extracts patterns for modules, validation (Zod/Yup), testing, async, errors, logging.
npx claudepluginhub vynazevedo/first-plan --plugin fpHow this skill is triggered — by the user, by Claude, or both
Slash command
/fp:lens-typescriptThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Pelo `package.json` + arquivos auxiliares:
Profiles codebases by detecting tech stack, frameworks, infrastructure, architecture patterns, quality signals, and scale metrics for targeted recommendations.
Analyzes existing codebases to detect project types, frameworks, structures, and collision risks. Supports context, brownfield, and setup modes for feature planning.
Analyzes Python project stacks including FastAPI, Django, Flask, Litestar, Celery workers, data apps, and packaging layouts (src/ vs flat) during discovery when pyproject.toml, setup.py, or requirements.txt detected.
Share bugs, ideas, or general feedback.
Pelo package.json + arquivos auxiliares:
| Sinal | Variante |
|---|---|
next.config.{js,ts,mjs} | Next.js |
nest-cli.json ou @nestjs/* em deps | NestJS |
vite.config.{js,ts} sem framework | SPA Vite |
vite.config.{js,ts} + @sveltejs/kit | SvelteKit |
astro.config.{js,ts,mjs} | Astro |
remix.config.{js,ts} | Remix |
@nuxt/kit ou nuxt.config.{js,ts} | Nuxt |
expo em deps | Expo (mobile) |
react-native em deps | React Native bare |
electron em deps | Electron |
bin field no package.json sem framework | CLI Node |
express ou fastify em deps | Backend tradicional |
pnpm-workspace.yaml | Monorepo pnpm |
turbo.json | Turborepo |
nx.json | Nx |
"type": "module" no package.json -> ESMtsconfig.json -> verificar strict, noImplicitAny, paths, target, modulezod em deps -> Zodyup em deps -> Yupio-ts -> io-tsclass-validator + class-transformer -> nestjs-stylevalibot, arktype -> opções modernasjoi -> Joi (legacy)Verificar onde validação acontece (boundary handlers? service layer?)
.then/.catch ou async/await?RxJS em deps -> reactive style (comum em Angular/NestJS)Effect library?Result<T, E> library (neverthrow, effect)vitest, jest, mocha, ava, tap?vitest.config.ts, jest.config.js)playwright, cypress, webdriverio)?vi.mock, jest.mock, sinon, nock (HTTP)?zustand, redux, jotai, recoil, pinia, mobx, Context apenas)@tanstack/react-query, swr, apollo, urql, server components)react-hook-form, formik, superforms)next-intl, i18next)@Injectable, @Inject)pino, winston, bunyan?console.log direto (smell).first-plan/Igual lens-go (stacks, architecture, boundaries, errors, testing, di, logging, reuse).
Adicional para frontend:
03-reuse/components.md - componentes UI (priorizar Server Components, hooks compartilhados, layout components)03-reuse/hooks.md - custom hooks reusáveisAumentar:
tsconfig.strict: true + projeto sem any -> alta confiança no padrão "evitar any"Reduzir:
any em projeto strict// @ts-ignore ou // @ts-expect-error sem comentário explicandoconsole.log em produçãoprocess.env.X sem schema (smell - deveria ter validação central)useEffect com lista de deps incorreta (React)