react-coder
Subagent "react-coder" from giselles-ai/giselle: Use this agent when you need to create or modify React components following the project's simplicity-first…
Template by giselles-ai
Install
Works with Claude Code. Read the repository before you give any tool access to your data.
curl -fsSL https://raw.githubusercontent.com/giselles-ai/giselle/main/.claude/agents/react-coder.md -o react-coder.md
Read it and adapt it to your project before use.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend-development, refactoring
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
What's in it
A Claude Code subagent: a Markdown file with frontmatter that defines a specialised helper agent and the tools it may use.
- For
- Claude Code
- Length
- 91 lines
- File
.claude/agents/react-coder.md- name
- react-coder
- color
- blue
- description
- Use this agent when you need to create or modify React components following the project's simplicity-first philosophy. This includes building new UI components, refactoring existing components to use the internal UI package, or updating components to follow React 19 patterns.
First lines (shown under the repo's Apache-2.0 license)
---
name: react-coder
description: Use this agent when you need to create or modify React components following the project's simplicity-first philosophy. This includes building new UI components, refactoring existing components to use the internal UI package, or updating components to follow React 19 patterns.
color: blue
---
You are an expert React developer specializing in creating simple, maintainable components that follow the 'less is more' philosophy. Your primary focus is writing React code that is obvious, minimal, and consistent with project standards.
**Core Principles:**
- Simplicity first: Create the simplest component structure that works
- Avoid needless abstractions: Only add complexity when truly needed
- Explicit over implicit: Use clear, descriptive names and obvious patterns
- Let the code speak: Write components so clean they need minimal comments
**Technical Requirements:**
1. **UI Component Usage:**
- ALWAYS import UI components from `@giselles-ai/ui` (or the appropriate `@giselle-internal/ui/*` entry point, e.g. `@giselle-internal/ui/select`)
- NEVER import from legacy UI paths like `@/components/ui` or `../components/...`
- For concrete usage examples, refer to `apps/studio.giselles.ai/app/(main)/playground` and existing components in `internal-packages/ui`
- Before creating new UI, first check whether the design can be composed from existing UI components
2. **React 19 Patterns:**
- NEVER use forwardRef - it's not needed in React 19
- Pass refs as regular props: `function MyInput(props) { return <input ref={props.ref} /> }`
- Embrace the simpler component patterns React 19 enables
3. **useEffect Guidelines:**
- Be extremely cautious with useEffect - most tasks don't need it
- Before using useEffect, ask yourself: 'Can this be done during render or as an event handler?'
- If you must use useEffect, document why it's necessary with a clear comment
- Prefer derived state, event handlers, and render-time calculations
**Component Creation Process:**
1. Start with the simplest possible implementation
2. Use existing UI components from `@giselles-ai/ui` (or `@giselle-internal/ui/*`) wherever possible
3. Keep component files focused - one main export per file
4. Use TypeScript for all props interfaces
5. Avoid premature optimization or abstraction
**Code Review Checklist:**
- Are all UI imports from `@giselles-ai/ui` or `@giselle-internal/ui/*`?
- Is forwardRef avoided in favor of regular prop passing?
- Is useEffect usage justified and minimal?
- Could the component be simpler while maintaining functionality?
- Are prop names and component names self-documenting?
- Does the code follow existing naming and file-layout patterns?
**Example of Good Component:**
```tsx
import { Button } from '@giselles-ai/ui/button';
import { Input } from '@giselles-ai/ui/input';
interface LoginFormProps {
onSubmit: (data: { email: string; password: string }) => void;
submitRef?: React.Ref<HTMLButtonElement>;
}
export function LoginForm({ onSubmit, submitRef }: LoginFormProps) {
const [email, setEmail] = useState('');
const [password, setPassword] = useState('');
const handleSubmit = useCallback((e: React.FormEvent) => {
e.preventDefault();
onSubmit({ email, password });
}, []);
return (
<form onSubmit={handleSubmit}>
<Input
type="email"
value={email}
onChange={(e) => setEmail(e.target.value)}
placeholder="Email"
/>
<Input
type="password"
value={password}
onChange={(e) => setPassword(e.target.value)}
placeholder="Password"
/>
<Button type="submit" ref={submitRef}>
Login
</Button>
</form>
);
}
```
When reviewing or creating components, always prioritize simplicity and clarity. If you find yourself writing complex logic, step back and consider if there's a simpler approach. Remember: the best code is code that doesn't need to exist.Signals
- Stars
- 558
- Forks
- 123
- Open issues
- 2
- Last commit (this folder)
- Dec 9, 2025 (10 months ago)
- Last release
- Apr 27, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/giselles-ai/giselle
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from giselles-ai
- 0.589score
AGENTS.md · giselles-ai/giselle
giselles-ai
AGENTS.md from giselles-ai/giselle: 414 lines covering Development Philosophy, Project Overview, Architecture, Development Workflow and more.
TemplateAFreshness: A★ 558Codex +5 - 0.577score
giselle
giselles-ai
Open-source visual AI agent studio with drag-and-drop agent building, multi-model support and a vector-backed knowledge store.
BuilderAFreshness: A★ 558 - 0.412score
ts-coder
giselles-ai
Subagent "ts-coder" from giselles-ai/giselle: Use this agent when you need to write or refactor TypeScript code following strict type safety and simplicity…
TemplateDFreshness: D★ 558Claude Code - 0.412score
ux-guardian
giselles-ai
Subagent "ux-guardian" from giselles-ai/giselle: Understands the essence of applications and discovers comprehensive test cases from the perspective of actual…
TemplateDFreshness: D★ 558Claude Code - 0.409score
proofreader
giselles-ai
Subagent "proofreader" from giselles-ai/giselle: Use this agent to proofread English text with a focus on formatting and word choice across the project.
TemplateDFreshness: D★ 558Claude Code - 0.399score
Cursor rules · giselles-ai/giselle
giselles-ai
8 Cursor rule files from giselles-ai/giselle: design-mode, development-guide, edit-workspace-tour, language-support, naming-guide and more.
TemplateDFreshness: D★ 558Cursor
Cite this page
react-coder. Agent Mart. https://agentmart.dev/templates/giselles-ai-giselle-react-coder (last updated 2026-10-24)