all prompt (모프)
AI 프롬프트 공유 커뮤니티 플랫폼. 나무위키처럼 대상(Entity) 중심으로 문서를 탐색하다가 프롬프트를 발견/이해/기여할 수 있게 설계한다.
핵심 컨셉
- Entity(대상) 중심 구조: 모든 프롬프트는 특정 Entity 문서에 귀속된다.
- 프롬프트는 문서(위키) 형태: 원문 + 설명 + 예시 + 모델 + 태그 + 버전 히스토리 + 리믹스(파생).
- 권한 모델
- 비회원: 열람
- 회원: 등록/댓글/좋아요/북마크
- 기여자: 수정 제안(리비전 생성)
- 관리자: 승인/롤백/신고 처리
DB 스키마
db/schema.sql에 PostgreSQL DDL이 있으며, prisma/schema.prisma는 동일 구조의 Prisma 매핑이다.
원격 DB 적용(권장: 로컬에서 실행)
보안상 이 저장소/문서에는 비밀번호를 포함하지 않는다. 아래처럼 환경변수로 전달해서 실행한다.
export PGPASSWORD='<password>'
psql -h ncue.net -U ncue -d all_prompt -f db/schema.sql
도커로 운영(ubuntu 22.04)
루트에 docker-compose.yml, Caddyfile이 있으며 HTTPS 포함으로 prompt.ncue.net을 바로 띄울 수 있다.
cp .env.example .env
# .env에서 DATABASE_URL, CADDY_EMAIL, (필요 시) PGPASSWORD 채우기
docker compose up -d --build
스키마/시드(필요 시 1회):
docker compose --profile init run --rm db_init
docker compose --profile init run --rm db_seed
기술 스택(가정)
- Frontend: Next.js (App Router)
- Backend: Next.js API(Route Handlers) 또는 NestJS
- DB: PostgreSQL
- ORM: Prisma
- Auth: OAuth + Email
폴더 구조(예시)
docs/architecture.md 참고.
Description
Languages
TypeScript
58.1%
Python
23.7%
HTML
16.1%
Dockerfile
1.5%
CSS
0.6%