app-dev-practices

app-dev-practices is a skill for Claude Code from ryan-haver/fusebase-mcp. It costs 84 tokens per session (2,509 once invoked), scanned A, original, MIT.

A practical guide to building Fusebase Apps, including project setup, authentication, permissions, and app registration.

In plain words
What is it for?
It helps create and register apps, configure Vite and access settings, retrieve user details, move between apps, and troubleshoot build problems.
Why use it?
It gives developers one place to check the expected structure and setup steps instead of working them out from incomplete examples.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions Claude Code.

Part of the fusebase plugin — 16 skills, 2 agents, 1 hook, 1 MCP server shipped together

Good fit It helps create and register apps, configure Vite and access settings, retrieve user details, move between apps, and troubleshoot build problems.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ryan-haver/fusebase-mcp/app-dev-practices
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add ryan-haver/fusebase-mcp --skill app-dev-practices
Clone the repo
git clone --depth 1 https://github.com/ryan-haver/fusebase-mcp

Made for: Claude Code.

Or install fusebase, the plugin that ships this one along with the rest of its 16 skills, 2 agents, 1 hook, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for app-dev-practices

README.md
[![agentmods](https://agentmods.dev/badge/skills/ryan-haver/fusebase-mcp/app-dev-practices/github.svg)](https://agentmods.dev/skills/ryan-haver/fusebase-mcp/app-dev-practices)
Your own site
<a href="https://agentmods.dev/skills/ryan-haver/fusebase-mcp/app-dev-practices"><img src="https://agentmods.dev/badge/skills/ryan-haver/fusebase-mcp/app-dev-practices/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for app-dev-practices

Your own site · 80×15
<a href="https://agentmods.dev/skills/ryan-haver/fusebase-mcp/app-dev-practices"><img src="https://agentmods.dev/badge/skills/ryan-haver/fusebase-mcp/app-dev-practices.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 84 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,509 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00084 $0.02509
Opus 5.5 $0.00034 $0.01004
Sonnet 5.5 $0.00017 $0.00502
Haiku 4.5 $0.00008 $0.00251

Measured 2d ago against content hash 6951ed90ad03, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

app-dev-practices scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

apps/client-portal-dashboard/.claude/skills/app-dev-practices/SKILL.md · 238 lines

How it starts

The opening of the file, as written. The whole thing — 238 lines — stays where its author put it; the contents beside it link to each section on GitHub.

App Dev Practices

Always Scaffold First

Run fusebase scaffold --template spa --dir apps/<name> before writing any app files. This generates the canonical React + Vite + Tailwind v4 + shadcn/ui project structure. For apps needing a backend, also run fusebase scaffold --template backend --dir apps/<name>. Customize from there — never recreate boilerplate by hand.

Multi-User by Default

Every app is multi-user. Multiple users access the same deployed app simultaneously, each with their own identity (app token). Never design for a single user.

Rules:

  • Per-user state (OAuth tokens, preferences, selections) must be stored per-user — use httpOnly cookies (set by the server, scoped to the user's browser) or dashboard rows keyed by user ID

  • Shared env vars / Fusebase secrets are global — they are the same for all users. Never use them for per-user credentials or settings

  • In-memory backend variables are shared across all requests from all users — never store per-user data in module-level variables

  • When integrating third-party APIs with OAuth, each user must go through their own auth flow and get their own tokens

  • Stable partition keys only: when storing per-user rows, the partition key must come from a stable identity (userId, orgUserId, email if immutable), not from session/token artifacts.

  • Never use token-derived keys (e.g. ft:*, JWT fragments, rotating session IDs) as persistent user_key/partition keys — they change between sessions and split one user's data into multiple buckets.

  • Recommended format: normalize once in backend (user:<userId>) and reuse the same key for both read and write paths.

Ask yourself: "If two users open this app at the same time, will they interfere with each other?" If yes, the design is wrong.

Project Structure

Apps are React/Vite apps in apps/:

apps/
  my-app/
    package.json
    vite.config.ts
    src/
      App.tsx
      main.tsx

Use existing apps in apps/ as reference when building new ones.

Read the full file on GitHub · 238 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago Changed · +2 lines 6951ed90ad03
  2. 3d ago Changed · -4 lines 1b375bb41778
  3. 1mo ago First seen · 240 lines · 84 tokens per session scan A 1c2e28f94f31

Subscribe to this mod's changes

app-dev-practices is a skill published in the GitHub repository ryan-haver/fusebase-mcp (8 stars, last pushed 3d ago), licensed MIT. It adds 84 tokens to every session and 2,509 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-13.

Related

app-dev-practices compared with skills from other repositories

app-dev-practices next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
app-dev-practicesryan-haver/fusebase-mcpSkill83d agoMITA84Claude Code
hr-onboardingnexu-io/open-designSkill107ktodayApache-2.0A62Claude Code, Codex
book-mirrorgarrytan/gbrainSkill32ktodayMITA138Claude Code
exam-forecastanthropics/claude-for-legalSkill9.9ktodayApache-2.0A73Claude Code
lean-formalizewanshuiyin/Auto-claude-code-research-in-sleepSkill19k2d agoMITA81Claude Code
eli5companion-inc/feynmanSkill10ktodayMITA63Claude Code, Codex
deck-course-modulenexu-io/html-anythingSkill9.5ktodayApache-2.0A25Claude Code, Codex