Pulsar

Pulsar

Catch ORM bugs before they reach production

Pulsar is a Rust-powered static analyzer that understands your TypeScript, ORM calls, and database schema — catching bugs, performance issues, and mismatches that generic linters miss.

v0.5.0 · MIT · Written in Rust

What Pulsar catches

12 built-in rules spanning quality, correctness, performance, security, and schema analysis.

Quality & Correctness
Catches SELECT *, missing LIMIT, unbounded finds, always-true WHERE, and missing awaits before they ship.
5 rules
Performance
Eliminates N+1 queries, loop-based queries, and callback-based queries. The IR graph tracks every pattern.
3 rules
Schema-Aware
Cross-references your TypeScript with your Prisma schema. Detects unknown columns, missing indexes, and missing foreign keys.
3 rules

See it in action

Pulsar analyzes your TypeScript + Prisma schema in a unified pipeline. One command, zero config.

// Pulsar catches 3 issuesconst users = db.select().from(users);const user = db.query.users.findFirst();const posts = db.select({ id: posts.id }).from(posts);
// Clean and safeconst users = await db.select({ id: users.id, name: users.name })  .from(users).limit(100);const user = await db.query.users.findFirst({  where: eq(users.id, 1),});const posts = await db.select({ id: posts.id })  .from(posts).limit(50);

no-select-star · no-unbounded-find · no-missing-limitall fixed