FastAPI용 보안 인증, 이벤트 추적, 감시 기능이 내장된 현대적 관리자 인터페이스 생성기
중간맛 분석
스택: FastAPI + SQLAlchemy + Pydantic v2 + HTMX / 난이도: 중간 / 바로 쓸 수 있나: 예 — 설치 후 모델 등록으로 즉시 관리 화면 생성 / 데모: YouTube 동영상 데모(THLdUbDQ9yM) 제공 / 주요 특징: 다중 세션 백엔드(메모리/Redis/Memcached/DB), CSRF/레이트 제한/IP 제한 등 내장 보안, 자동 폼 생성, 페이지네이션 테이블, 전체 CRUD 작업, 이벤트 추적 및 감사 로그, 시스템 상태 모니터링
이런 레포예요
이럴 때 쓰면 좋아요
- SaaS 또는 웹 애플리케이션의 데이터 관리를 위한 빠른 관리자 대시보드 구축
- 사용자 활동 추적이 필요한 엔터프라이즈 애플리케이션의 감사 로그 및 이벤트 추적
- 프로토타입에서 프로덕션까지 보안 기능(CSRF, 레이트 제한, IP 제한)이 미리 적용된 관리 화면 제공
핵심 기능
대안 대비 차별점
FastAPI용 관리자 인터페이스 중 자동 UI 생성, 내장 감사 로그, 다중 세션 백엔드를 한 패키지로 제공하여 최소 설정으로 프로덕션급 대시보드를 구축할 수 있습니다.
먹어본 사람들
실제로 차려 먹어본 손님들의 흔적이에요 — 한마디와 완주 인증 모두 검수 후 공개돼요.
이 레포, 해먹는 법
처음 오셨어요? 어렵지 않아요 — 위에서 아래로 따라 하면 내 컴퓨터에 이 레포를 차려서 바로 맛볼 수 있어요.
준비물
- Python 3.7+
- FastAPI
- SQLAlchemy (비동기 엔진 권장)
바로 차려먹기Python (uv)
깃밥이 레포 구조를 확인하고 만든 실행 명령이에요. 터미널에 붙여넣으면 받기부터 실행까지 한 번에 진행돼요.
git clone --depth 1 https://github.com/benavlabs/crudadmin.git && cd crudadmin && uv sync
uv가 없다면: brew install uv · 실행 명령은 README를 확인하세요.
코드는 내 컴퓨터에서 실행돼요 — 처음 보는 레포라면 내용을 한번 훑어보고 실행하는 습관을 추천해요.
README가 안내하는 자세한 단계 보기
- CRUDAdmin 패키지 설치하기
uv add crudadmin
- 프로덕션에서 Redis 세션을 사용할 경우 설치
uv add "crudadmin[redis]"
- FastAPI 애플리케이션에 CRUDAdmin 초기화하기
from contextlib import asynccontextmanager
from fastapi import FastAPI
from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine
from crudadmin import CRUDAdmin
engine = create_async_engine("sqlite+aiosqlite:///app.db")
async def get_session():
async with AsyncSession(engine) as session:
yield session
admin = CRUDAdmin(
session=get_session,
SECRET_KEY="your-secret-key-here",
initial_admin={
"username": "admin",
"password": "secure_password123"
}
)
- 모델을 관리 인터페이스에 등록하기
admin.add_view(
model=User,
create_schema=UserCreate,
update_schema=UserUpdate,
allowed_actions={"view", "create", "update"}
)
- FastAPI 애플리케이션에 lifespan과 마운트 설정하기
@asynccontextmanager
async def lifespan(app: FastAPI):
async with engine.begin() as conn:
await conn.run_sync(Base.metadata.create_all)
await admin.initialize()
yield
app = FastAPI(lifespan=lifespan)
app.mount("/admin", admin.app)
- 애플리케이션 실행 후
/admin접속하여 초기 설정한 관리자 계정으로 로그인
깃밥트라이로 맛보기
받아보기 귀찮고 살짝 불안했다면 — 안전 스캔부터 설치까지 터미널 한 줄로 끝나요.
터미널에 붙여넣으면 깃밥 안전 스캔 → 격리 폴더 clone → 설치 → 실행법 안내까지 자동이에요. 처음이어도 괜찮아요 — 이 한 줄이 전부예요.
npx gitbap-try benavlabs/crudadmin
Node.js만 있으면 설치 없이 실행돼요 · 깃밥트라이가 뭐예요? →
별 추이 · 7일
활용성 · 따라 만들기 좋은가
- 관대한 라이선스
- 테스트 있음
- 예제 디렉토리
- 최근 활동
- AGENTS.md
- llms.txt
- 템플릿
🟢 최근 활동 있음 · 2024년 생성
「백엔드·DB」 이런 레포, 매주 받아보실래요?
매주 월요일 아침, 골라 담은 밥상만. 광고 없이 · 언제든 해지.
내 레포인가요? README에 깃밥 배지 달기
[](https://www.gitbap.com/r/benavlabs/crudadmin)🔌 클로드에서 바로 써보기 — 깃밥 연결하는 법
깃밥을 클로드에 연결하면 이런 레포를 클로드·커서·Codex에서 바로 찾고 체험할 수 있어요.
클로드 설정 → 커넥터에 이 주소를 붙여넣기.
https://www.gitbap.com/api/mcp플러그인을 설치하면 /gitbap-trending·/gitbap-try 슬래시 커맨드로 레포를 그 자리에서 체험. Claude Code에서 아래 두 줄을 차례로 실행하세요.
/plugin marketplace add jakeparkcolde/gitbap-cowork/plugin install gitbap-cowork@gitbapAI가 README 기반으로 요약했습니다 · 원문 보기