Um simples código aberto alternativo do Github no Github (Irônico, certo?), Ele mira é estar totalmente funcional com algumas das principais características do trabalho do GitHub.
Consulte #84 para obter mais informações sobre os recursos suportados.
Espere que as coisas quebrem.
git remote git push e Git Primeiro você tem que clonar o repositório
git clone https://github.com/Fredkiss3/gh-next.gitInicie a instância do Docker Compose para iniciar a instância do db + redis:
docker-compose up -d --remove-orphansInstale as dependências:
pnpm install Renomeie .env.example para .env.local e altere o arquivo para suas necessidades,
E inicie o projeto:
pnpm run devO aplicativo será exibido em http: // localhost: 3000.
Abra o código fonte e comece a balançar! ?
Uma rápida olhada nos arquivos e diretórios de nível superior que você verá neste projeto.
.
├── src/
│ ├── app
│ ├── actions
│ ├── components
│ ├── models
│ └── lib/
│ ├── client
│ ├── server
│ └── shared
├── biome.json
├── pnpm-lock.yaml
└── tsconfig.json
src/app/ : Esta pasta contém todas as rotas e páginas do nosso aplicativo.
src/actions : Esta pasta contém toda a lógica do nosso aplicativo.
src/components : Esta pasta contém todos os componentes do nosso aplicativo.
src/models : Esta pasta contém todos os modelos de banco de dados do nosso aplicativo.
src/lib/ : Esta pasta contém UTILs e ajudantes usados em todo o nosso aplicativo:
client : Esta pasta contém todos os utilitários que são apenas para clientes, geralmente usados pelos componentes do cliente. Ele contém principalmente ganchos
server : esta pasta contém todos os utilitários que são apenas para servidor, para uso em componentes do servidor e ações do servidor. Ele também contém os esquemas de banco de dados dentro de db/schema
shared : Esta pasta contém todos os utilitários compartilhados entre o servidor e o cliente, eles podem ser usados em qualquer lugar do aplicativo.
biome.json : Este arquivo contém a configuração do Bioma para ativar aformatação automática.
pnpm-lock.yaml : Este arquivo contém o bloqueio de dependências para o repositório.
tsconfig.json : Este arquivo contém a configuração do TypeScript, que são usados por todos os pacotes subjacentes
| Nom | papel |
|---|---|
SESSION_SECRET | String aleatória de comprimento de 32 chars usada para codificar o ID da sessão |
REDIS_HTTP_URL | O URL para o Connect to Redis HTTP para uma loja de chave/valor |
DATABASE_URL | O URL para a conexão com o banco de dados POSTRES |
REDIS_HTTP_USERNAME | URL do servidor de arquivos local para armazenar valores de chave |
REDIS_HTTP_PASSWORD | URL do servidor de arquivos local para armazenar valores de chave |
GITHUB_CLIENT_ID | ID do cliente do GitHub armazenado para o nosso aplicativo usado para autenticar usuários com github |
GITHUB_PERSONAL_ACCESS_TOKEN | Token do cliente Github armazenado para nosso aplicativo usado para autenticar usuários com github |
GITHUB_REDIRECT_URI | URL para redirecionar quando um usuário foi autenticado |
GITHUB_SECRET | Github Secret armazenado para o nosso aplicativo |