# Show GN: FastAPI Base Repository 라이브러리

> Clean Markdown view of GeekNews topic #24972. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=24972](https://news.hada.io/topic?id=24972)
- GeekNews Markdown: [https://news.hada.io/topic/24972.md](https://news.hada.io/topic/24972.md)
- Type: show
- Author: [dbsrbals26](https://news.hada.io/@dbsrbals26)
- Published: 2025-12-10T15:13:25+09:00
- Updated: 2025-12-10T15:13:25+09:00
- Original source: [github.com/4jades](https://github.com/4jades/base-repository)
- Points: 10
- Comments: 0

## Summary

**FastAPI Base Repository**는 SQLAlchemy 기반 프로젝트에서 반복되는 CRUD 코드를 최소화하기 위한 **제네릭 Repository 레이어**를 제공합니다. 모델과 스키마를 지정하면 타입 안정성을 유지한 채 기본 CRUD가 자동 생성되며, mypy 오버로드를 통해 결과 타입도 명확히 추론됩니다. Mapper 교체만으로 다양한 스키마 전략을 적용할 수 있어, SQLAlchemy v2와 Pydantic v2 환경에서 보일러플레이트를 줄이려는 팀에 실용적인 선택지가 됩니다.

## Topic Body

ORM 기반의 CRUD 구현에서 반복되는 쿼리 코드가 계속 쌓입니다.  
저희 팀에서도 모델마다 비슷한 패턴의 보일러플레이트가 늘어나고 있었고,  
SQLAlchemy v2 스타일과 타입 안정성, Pydantic v2 스키마 매핑까지 모두 만족하는 라이브러리를 찾기는 어렵더군요.  
  
그래서 이번 기회에 SQLAlchemy CRUD 보일러플레이트를 줄이기 위한  
간단한 Repository 레이어를 라이브러리로 정리해보았습니다.  
  
- 제네릭 기반으로 Model, Schema를 지정하면 CRUD가 자동 제공되고  
- mypy에서 결과 타입을 정확하게 추론하도록 오버로드도 구성했고  
- 필요한 경우 Mapper만 교체해 다양한 스키마 전략을 적용할 수 있습니다.  
  
저희 팀에서는 이걸 통해 SQLAlchemy CRUD 코드량을 꽤 줄일 수 있었습니다.  
비슷한 문제를 겪고 계신 분이 있다면 참고해보시고,  
사용하면서 느끼신 점을 알려주시면 적극 반영해보겠습니다.  
  
링크: https://github.com/4jades/base-repository

## Comments



_No public comments on this page._
