From eb186cbfeb2d51e38ab0ad00e0e2b4e77fbf3028 Mon Sep 17 00:00:00 2001 From: 2620227 Date: Fri, 3 Jul 2026 17:14:47 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20README=EB=A5=BC=20=EC=9D=BC=EB=B0=98=20?= =?UTF-8?q?=EC=82=AC=EC=9A=A9=EC=9E=90=EC=9A=A9=20=ED=8F=AC=ED=84=B8=20?= =?UTF-8?q?=EC=82=AC=EC=9A=A9=EB=B2=95=20=EC=95=88=EB=82=B4=EB=A1=9C=20?= =?UTF-8?q?=EA=B0=9C=ED=8E=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 공개 레포라 비개발자도 보므로 로그인·개발도구·프로젝트 공유/수정·소통 사용법을 앞세우고 매뉴얼 링크 연결. 로그인 용어는 '행번'으로 표기. 개발자용 정보는 하단에 간단히. Co-Authored-By: Claude Opus 4.8 --- README.md | 70 ++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 48 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 0ec11d3..dfd6cc8 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,53 @@ # AI DEV — 사내 개발 포털 -직원이 한 곳에서 **사내 개발 사이트로 이동**하고, **만든 프로젝트를 공유·코멘트**하는 포털. -GitHub 감성 UI. Keycloak SSO(사번 로그인). Node(Express+EJS) + Postgres. +사내 개발 도구로 **한 번에 이동**하고, 내가 만든 프로젝트를 동료와 **공유·소통**하는 곳입니다. +행번으로 로그인하면 바로 쓸 수 있어요. -> 브랜드명 `AI DEV` 는 `PORTAL_BRAND` 환경변수로 바꿀 수 있습니다. +🔗 접속: **https://portal.bokdev.in** +📖 자세한 사용 매뉴얼: **https://gitea.bokdev.in/playground/MANUAL** (포털 헤더의 `매뉴얼` 버튼에서도 열 수 있어요) -## 기능 -- **Keycloak OIDC 로그인** (realm `bokdev`, client `portal`, 사번 = preferred_username) -- **개발 사이트 모음** — 개발 핵심(Coder/Gitea/Kubero/Harbor) + AI·데이터(LiteLLM/Chat/OpenEverest/MinIO). 목록은 `src/sites.js`. -- **프로젝트 공유** — repo/앱 URL·설명·태그 -- **코멘트 / 스타** +--- + +## 처음 오셨나요? + +1. **로그인** — 포털에 들어가면 자동으로 사내 로그인(Keycloak) 화면으로 이동합니다. + **행번**과 비밀번호로 로그인하세요. 별도 회원가입은 없습니다. +2. 로그인하면 대시보드가 열립니다. 아래 세 가지를 할 수 있어요. + +## 무엇을 할 수 있나요? + +### 1. 개발 도구 바로가기 +대시보드 맨 위 **개발 도구** 카드를 누르면 새 탭으로 이동합니다. +포털에 로그인돼 있으면 대부분 **다시 로그인 없이(SSO)** 바로 들어갑니다. +- 모두 사용: **Coder**(클라우드 IDE), **Gitea**(Git 저장소), **Kubero**(배포) +- 관리자 전용: Harbor·OpenEverest·MinIO·Keycloak·LiteLLM (권한이 있는 분에게만 보입니다) + +### 2. 내 프로젝트 공유 +- **새 프로젝트** 버튼으로 등록합니다. 제목·설명(Markdown 지원)·태그·저장소 URL·배포 URL을 넣을 수 있어요. + 저장소 URL을 넣고 **README 가져오기**를 누르면 설명을 자동으로 채워줍니다. +- **공개/비공개**를 고를 수 있습니다. 공개하면 동료들의 피드에 보이고, 비공개는 나만 봅니다(언제든 전환 가능). +- 등록한 프로젝트는 상세 화면의 **✏️ 수정** 버튼으로 내용을 고치거나 삭제할 수 있습니다. + +### 3. 동료 프로젝트 둘러보기 +- **공유 프로젝트** 피드에서 동료들이 만든 결과물을 봅니다. 최신순·인기순 정렬, 헤더 검색으로 찾기. +- ❤️ **좋아요**, ⭐ **즐겨찾기**, 💬 **댓글**(답글·LGTM)로 응원과 피드백을 남겨보세요. +- 이름/아바타를 누르면 그 사람의 **프로필**로 이동해 그가 만든 프로젝트를 모아 볼 수 있습니다. + +### 그 외 +- **프로필 사진**을 올릴 수 있어요(내 프로필 → 사진의 + 버튼). +- 헤더에서 **다크/라이트 테마**를 전환할 수 있습니다. + +## 문제가 있거나 아이디어가 있다면 +버그·건의는 이슈로 남겨 주세요 — 언제든 환영합니다. +👉 https://gitea.bokdev.in/playground/ai-dev-portal/issues + +--- + +## 개발자용 (참고) + +서버 렌더링 기반의 가벼운 웹앱입니다. **Node(Express + EJS) + Postgres**, 로그인은 **Keycloak OIDC**. +프런트 프레임워크·번들러 없이 정적 CSS/바닐라 JS로 동작합니다. -## 로컬 실행 ```bash cp .project-env.example .project-env # 값 채우기 (OIDC_CLIENT_SECRET 등) set -a; . ./.project-env; set +a @@ -19,17 +55,7 @@ npm install npm run db:init # schema.sql 적용 (최초 1회) npm run dev # http://localhost:3000 ``` -- 로컬에서 OIDC 콜백을 받으려면 Keycloak `portal` client redirect 에 - `http://localhost:3000/auth/callback` 이 등록돼 있어야 합니다(이미 등록됨). -## 배포 (Kubero) -- NodeJS buildpack (`npm install` → `node index.js`). Dockerfile 불필요. -- Kubero Env: `BASE_URL=https://portal.bokdev.in`, `DATABASE_URL`, `OIDC_*`, `SESSION_SECRET`, `PORTAL_BRAND`. -- 도메인: `portal.bokdev.in` (게이트웨이/라우트 별도 구성 필요) 또는 `.apps.bokdev.in`. -- 배포 도메인이 정해지면 Keycloak `portal` client redirect 에 `https://<도메인>/auth/callback` 추가. - -## 연결 정보 -- **DB**: OpenEverest `postgresql-6ox` 의 `appdb`, schema `portal`, role `portal_app`. -- **Issuer**: `https://keycloak.bokdev.in/realms/bokdev` - -자세한 작업 규약은 `CLAUDE.md`. +- 배포는 Kubero(NodeJS buildpack), 도메인 `portal.bokdev.in`. +- 브랜드명 `AI DEV`는 `PORTAL_BRAND` 환경변수로 바꿀 수 있습니다. +- 코드 구조·작업 규약·환경변수 등 자세한 내용은 **`CLAUDE.md`** 를 참고하세요.