Claude Code vs LovableUpdated 2026-03-16

SUMMARY

Claude Code (CLI) uses markdown configuration while Lovable (Platform) uses markdown. They differ on 6 of 11 compared features. Both tools provide AI-assisted development but take different approaches to project configuration.

FEATURE COMPARISON

FeatureClaude CodeLovable
Config formatmarkdownmarkdown
Hierarchy support
Global config
Project config
Subdirectory scoping
File inclusion / imports
Ignore file.claudeignore
IDE integrationCLIPlatform
Schema / structureFree-form (Markdown)Free-form (Markdown)
Git committed
EncodingUTF-8UTF-8

FILE MAPPING

PurposeClaude CodeLovable
Project instructionsCLAUDE.mdAGENTS.md

SIDE-BY-SIDE CODE SAMPLES

Claude Code
CLAUDE.md
markdown
# Project Name

> TypeScript + React monorepo. Deployed on Vercel.

## Code Style

- TypeScript strict mode — no `any`, no `ts-ignore`
- Named exports only (no default exports)
- Prefer functional patterns: map/filter/reduce over for-loops
- Error handling: use Result<T, E> from `src/lib/result.ts`

## Architecture

- `src/routes/`   — Route handlers (thin layer, delegates to services)
- `src/services/`  — Business logic, one file per domain entity
- `src/db/`        — Drizzle ORM schema and query helpers
- `src/lib/`       — Shared utilities (logger, result type, validation)

## Commands

```bash
pnpm install          # Install dependencies
pnpm dev              # Start dev server (port 3000)
pnpm test             # Run Vitest suite
pnpm test:e2e         # Run Playwright tests
pnpm lint             # ESLint + Prettier check
pnpm db:migrate       # Run pending Drizzle migrations
```

## Git Conventions

- Conventional Commits: `feat:`, `fix:`, `chore:`, `docs:`
- Branch naming: `feat/short-description`, `fix/issue-number`
- Squash merge to main; delete branches after merge

## Notes

- The `src/legacy/` directory is being migrated. Do not add new code there.
- All dates are stored as UTC. Never use local time.

@docs/api-patterns.md
@docs/database-conventions.md
Lovable
AGENTS.md
markdown
# Project Instructions

## Stack
- React 19 with TypeScript
- Supabase for backend (auth, database, storage)
- TailwindCSS v4 + shadcn/ui components
- Vite for building

## Architecture
- Feature-based folder structure
- Each feature owns its components, hooks, and types
- Shared components in src/components/ui/
- All API calls go through src/lib/supabase.ts

## Conventions
- Use shadcn/ui components before creating custom ones
- Mobile-first responsive design
- Use Supabase RLS policies for authorization
- Prefer server-side filtering over client-side

## Brand
- Primary color: #6366F1 (indigo)
- Font: Inter for body, Cal Sans for headings
- Rounded corners (radius-lg) on all cards

KEY DIFFERENCES

1. Hierarchy support

Claude Code: Supported. Lovable: Not supported.

2. Global config

Claude Code: Supported. Lovable: Not supported.

3. Subdirectory scoping

Claude Code: Supported. Lovable: Not supported.

4. File inclusion / imports

Claude Code: Supported. Lovable: Not supported.

5. Ignore file

Claude Code: .claudeignore. Lovable: Not supported.

6. IDE integration

Claude Code: CLI. Lovable: Platform.

WHICH SHOULD I USE?

Recommendation

Choose based on your IDE/CLI preference. If you use Claude Code, configure CLAUDE.md. If you use Lovable, configure AGENTS.md. Many projects include config files for multiple tools so each team member can use their preferred editor.

PORTABILITY TIP

sync-instructions.sh
bash
# Maintain a single source of truth:
cp AI-INSTRUCTIONS.md CLAUDE.md
cp AI-INSTRUCTIONS.md .cursorrules
cp AI-INSTRUCTIONS.md AGENTS.md

SEE ALSO

agentconfig.ing2026-03-16COMPARE(1)