BangerStack
DX-first

Ship fullstack with joy

Type-safe APIs, shared packages, auth & docs out of the box. Built for developer experience.

TurboNesttRPCNextBun

🛡️ Fullstack type safety

Create a NestJS endpoint and call it from the frontend with complete type safety.

apps/api/src/features/users/users.router.ts
Back-end side
@Router( alias: 'users'})
export class UserRouter {
 @Query({
 output: z.array(usersSchema),
 })
 readAll() {
 return this.usersService.findAll();
 }
}
apps/web/app/page.tsx
Front-end side
'use client';
import { trpc } from '@web/libs/trpc-client';

export default function MyPage() {
 // ✨ Autocomplétion complète
 const { data, isLoading } = trpc.users.readAll.useQuery();

 return (
 <div>
 {isLoading ? 'Loading...' : JSON.stringify(data)}
 </div>
 );
}
Demo
Résultat

Click the button to fetch data