dsyoon a4a70b166d init
2026-02-16 17:18:45 +09:00
2026-02-16 17:18:45 +09:00

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
No description provided
Readme 68 KiB
Languages
TypeScript 58.1%
Python 23.7%
HTML 16.1%
Dockerfile 1.5%
CSS 0.6%