풀스택 웹 애플리케이션 개발 프레임워크 와스프(Wasp)가 핵심적인 변화를 발표했습니다. 기존에 사용하던 독점적인 도메인 특화 언어(DSL) 기반의 스펙(Spec) 정의 방식을 버리고, 이제는 타입스크립트(TypeScript)를 활용한 '타입스크립트 스펙(TypeScript Spec)'으로 전환한 것입니다. 이로써 개발자들은 익숙한 타입스크립트 환경에서 프런트엔드, 백엔드, 데이터베이스를 아우르는 풀스택 로직을 훨씬 더 유연하고 강력하게 정의할 수 있게 되었습니다.
와스프는 레일즈(Rails), 라라벨(Laravel) 등과 유사하게 '배터리 포함(batteries-included)' 철학을 지닌 프레임워크로, 웹 앱 개발의 전 과정을 하나의 응집력 있는 시스템으로 통합하는 것을 목표로 합니다. 특히 '스펙 중심(spec-driven)' 개발을 강조하며, 앱의 풀스택 기능을 정의하는 전용 로직 레이어인 스펙을 통해 리액트(React), 노드(Node.js), 프리즈마(Prisma) 등 다양한 기술 스택을 연결합니다. 이전에는 이 스펙 레이어를 독자적인 DSL로 구현했지만, 이는 오히려 개발의 걸림돌이 된다는 피드백에 따라 타입스크립트로 전환하게 되었습니다. 이제 개발자들은 *.wasp.ts 파일에서 @wasp.sh/spec 라이브러리의 생성자(page, route, query 등)를 사용하여 앱 스펙 객체를 구성하며, 서드파티 라이브러리 사용, 스펙 분할, 헬퍼 함수 정의 등 타입스크립트의 모든 기능을 활용할 수 있습니다.
이번 타입스크립트 스펙 도입은 와스프 프레임워크의 개발 생산성과 확장성을 크게 향상시킬 것으로 보입니다. 독점 DSL의 학습 곡선과 제한적인 기능으로 인해 발생했던 개발 병목 현상이 해소되고, 타입스크립트의 강력한 타입 시스템과 풍부한 생태계를 활용하여 더욱 견고하고 유지보수하기 쉬운 풀스택 애플리케이션을 구축할 수 있게 됩니다. 이는 개발자들이 프런트엔드와 백엔드 간의 복잡한 연결을 추상화하고, 핵심 비즈니스 로직에 집중할 수 있도록 돕는다는 점에서, 현대 웹 개발 트렌드에 발맞춘 중요한 진화로 평가됩니다.