Getting Started
Set up ZapCircle and integrate it into your project. Read
Get LLM-powered feedback on your code before you create a pull request.
Run npx zapcircle review
to:
ZapCircle works with any Git project and gives you behavior-aware comments.
npx zapcircle review
✨ You can even integrate it into your pre-commit workflow or CI pipeline.
.zap.toml
file describing the component’s behaviorzapcircle generate
to create the React componentname = "LoginForm"behavior = """Display an email and password input. Validate that both fields are filled.Show an error if login fails. Submit form on Enter."""
export function LoginForm() { const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState("");
const handleSubmit = () => { if (!email || !password) { setError("Please fill in both fields"); return; } // submit login... };
return ( <form onSubmit={handleSubmit}> <input type="email" value={email} onChange={e => setEmail(e.target.value)} /> <input type="password" value={password} onChange={e => setPassword(e.target.value)} /> {error && <div>{error}</div>} <button type="submit">Login</button> </form> );}
Getting Started
Set up ZapCircle and integrate it into your project. Read
Create Behaviors
Learn how to define and manage behaviors with .zap.toml
.
Read
Generating Code
Automatically generate React components from behaviors. Read
Generating Tests
Combine your React components with their underlying behaviors to generate better unit tests. Read
Updating Code
Describe changes to your code’s behavior and let ZapCircle update the implementation. Read
Reviewing Pull Requests
Use ZapCircle in CI to get behavior-aware code reviews from LLMs. Read
Creating New Projects
Turn an idea into a working React app with Tailwind, routing, and behaviors. Read
Explore front-end components with behavior-driven specifications.
Behavior-driven login experience. Example
Debounced input field with API calls. Example
Flexible button with variants and loaders. Example
Accessible dialog for messages or forms. Example
Alert and success banner with dismiss. Example