Github의 간단한 Github 대체 오픈 소스 (Ironic Right?)에서는 Github 작업의 핵심 기능 중 일부와 완전히 기능하는 것을 목표로합니다.
지원되는 기능에 대한 자세한 내용은 #84를 참조하십시오.
물건이 부서지기를 기대하십시오.
git push 및 git remote 명령을 지원하십시오 먼저 저장소를 복제해야합니다
git clone https://github.com/Fredkiss3/gh-next.gitdb + redis 인스턴스를 시작하려면 docker compose 인스턴스를 시작하십시오.
docker-compose up -d --remove-orphans종속성 설치 :
pnpm install .env.example .env.local 로 바꾸고 파일을 요구 사항으로 변경하십시오.
프로젝트를 시작하십시오.
pnpm run dev이 앱은 http : // localhost : 3000에 표시됩니다.
소스 코드를 열고 흔들기 시작하십시오! ?
이 프로젝트에서 볼 수있는 최상위 파일과 디렉토리를 간단히 살펴보십시오.
.
├── src/
│ ├── app
│ ├── actions
│ ├── components
│ ├── models
│ └── lib/
│ ├── client
│ ├── server
│ └── shared
├── biome.json
├── pnpm-lock.yaml
└── tsconfig.json
src/app/ :이 폴더에는 앱의 모든 경로 및 페이지가 포함되어 있습니다.
src/actions :이 폴더에는 앱의 모든 논리가 포함되어 있습니다.
src/components :이 폴더에는 앱의 모든 구성 요소가 포함되어 있습니다.
src/models :이 폴더에는 앱의 모든 DB 모델이 포함되어 있습니다.
src/lib/ :이 폴더에는 앱 전반에 사용되는 Utils & Helpers가 포함되어 있습니다.
client :이 폴더에는 일반적으로 클라이언트 구성 요소에서 사용하는 클라이언트 전용 모든 유틸리티가 포함되어 있습니다. 주로 후크가 포함되어 있습니다
server :이 폴더에는 서버 구성 요소 및 서버 작업 내에서 사용하기 위해 서버 전용 모든 유틸리티가 포함되어 있습니다. 또한 db/schema 내부의 DB 스키마도 포함되어 있습니다
shared :이 폴더에는 서버 및 클라이언트간에 공유되는 모든 유틸리티가 포함되어 있으므로 앱의 어느 곳에서나 사용할 수 있습니다.
biome.json :이 파일에는 자동 지정을 가능하게하는 Biome 구성이 포함되어 있습니다.
pnpm-lock.yaml :이 파일에는 repo의 종속성 잠금이 포함되어 있습니다.
tsconfig.json :이 파일에는 모든 기본 패키지에서 사용되는 TypeScrip의 구성이 포함되어 있습니다.
| 명령 | 역할 |
|---|---|
SESSION_SECRET | 랜덤 32 숯 길이 문자열 세션 ID를 인코딩하는 데 사용됩니다. |
REDIS_HTTP_URL | 키/가치 저장소를 위해 Redis HTTP에 연결하는 URL |
DATABASE_URL | Postres 데이터베이스에 연결되는 URL |
REDIS_HTTP_USERNAME | 키 값을 저장하기위한 로컬 파일 서버 URL |
REDIS_HTTP_PASSWORD | 키 값을 저장하기위한 로컬 파일 서버 URL |
GITHUB_CLIENT_ID | GitHub로 사용자를 인증하는 데 사용되는 앱에 저장된 GitHub 클라이언트 ID |
GITHUB_PERSONAL_ACCESS_TOKEN | Github로 사용자를 인증하는 데 사용되는 앱에 저장된 Github 클라이언트 토큰 |
GITHUB_REDIRECT_URI | URL 사용자가 인증 된 경우 리디렉션됩니다 |
GITHUB_SECRET | Github 비밀은 앱에 저장되었습니다 |