AI 기반 개발을 위한 기술 선택: 올바른 스택 선택
Source: Dev.to
This is Day 2 of the Building a SaaS Solo – Design, Implementation, and Operations Advent Calendar 2025.
Yesterday’s article covered “How to Start Indie Development.” Today we dive deeper into tech selection, which is crucial for AI‑driven development—a style that leverages AI coding assistants such as Claude Code, Codex, or Cursor.
You can tell the AI “implement this feature” and it generates code; when you hit an error, say “fix this error” and it suggests solutions. To maximize efficiency, choose tech stacks that AI can understand well.
Resource: Indie Development Complete Guide on izanami – 기술 선택 리소스를 포괄적으로 정리한 가이드.
Below I share the stack I actually chose and the criteria behind those decisions.
Why Type Information Helps AI
interface User {
id: string;
name: string;
email: string;
}
function getUser(id: string): Promise {
// AI can understand what this function returns
}
Statically typed languages like TypeScript embed type information directly in the code, making it easier for AI to infer what a function receives and returns. Dynamically typed languages (e.g., Ruby, Python) can also work well if their documentation is comprehensive.
Selection Criteria
| 기준 | 왜 중요한가 |
|---|---|
| Comprehensive documentation (preferably in English) | AI가 더 정확한 응답을 생성합니다. |
| Large user base | AI가 더 많은 예시와 패턴을 학습했습니다. |
| Clear conventions / rules | 모델의 모호성을 줄여줍니다. |
| Maturity (≥ 6 months since release) | 신규 라이브러리는 학습 데이터가 부족할 수 있습니다. |
| Type safety | 코드에 대한 AI의 추론 능력을 향상시킵니다. |
Chosen Technologies
Frontend
| 기술 | 선택 이유 |
|---|---|
| Next.js | 풍부한 문서와 명확한 App Router 규칙. |
| TypeScript | 타입 정보가 AI 정확도를 높입니다. |
| Tailwind CSS | 직관적인 클래스명으로 AI가 이해하기 쉽습니다. |
Backend & Infrastructure
| 기술 | 선택 이유 |
|---|---|
| Supabase | PostgreSQL 기반, 포괄적인 문서. |
| Vercel | Next.js와 뛰어난 호환성, 배포가 간편합니다. |
| Drizzle ORM | 타입 안전성, SQL과 유사한 문법. |
Authentication & API
| 기술 | 선택 이유 |
|---|---|
| Better Auth | TypeScript로 구축되어 타입 안전합니다. |
| Hono | TypeScript 기반, 가볍습니다. |
Note: 전체 기술 스택은 “About Memoreru” 페이지를 참고하세요.
Migration Experiences
| From → To | Reason |
|---|---|
| Prisma → Drizzle ORM | 타입 안전성과 성능을 우선시하기 위해. |
| NextAuth.js → Better Auth | 보다 유연한 인증이 필요했기 때문. |
| Route Handler → Hono | API 설계 효율성을 높이기 위해. |
Switching technologies is tedious, but AI‑driven development can assist with migration work (e.g., generating adapters, updating type definitions). Rather than aiming for perfection from the start, adopt a mindset of “if it doesn’t work, I’ll change it.”
How I Used AI for Comparison
I frequently asked Claude Code questions such as “compare authentication libraries” or “what are my ORM options.” The model organized each library’s features, pros, and cons, which dramatically sped up the decision‑making process. The final choice was still made by me.
Quick Checklist for AI‑Friendly Tech Selection
- 공식 문서가 포괄적이고 영어로 제공되는가?
- GitHub에서 활발한 사용자 기반을 가지고 있는가?
- 출시된 지 6개월 이상 되었는가?
- 규칙과 컨벤션이 명확한가?
If all boxes are checked, you can develop efficiently with AI‑driven development.
What’s Next
Tomorrow I’ll explain “Project Structure Overview for Indie Development with Next.js + Supabase.”