Un código abierto alternativo de GitHub simple en GitHub (¿irónico, ¿verdad?), Se dirige es ser completamente funcional con algunas de las características centrales del trabajo de GitHub.
Consulte el #84 para obtener más información sobre las características compatibles.
Espere que las cosas se rompan.
git remote git push and Git Primero tienes que clonar el repositorio
git clone https://github.com/Fredkiss3/gh-next.gitInicie la instancia de Docker Compose para iniciar la instancia de DB + Redis:
docker-compose up -d --remove-orphansInstale las dependencias:
pnpm install Renombrar .env.example a .env.local y cambie el archivo a sus necesidades,
Y lanza el proyecto:
pnpm run devLa aplicación se mostrará en http: // localhost: 3000.
¡Abra el código fuente y comience a rockear! ?
Un vistazo rápido a los archivos y directorios de nivel superior que verá en este proyecto.
.
├── src/
│ ├── app
│ ├── actions
│ ├── components
│ ├── models
│ └── lib/
│ ├── client
│ ├── server
│ └── shared
├── biome.json
├── pnpm-lock.yaml
└── tsconfig.json
src/app/ : Esta carpeta contiene todas las rutas y páginas de nuestra aplicación.
src/actions : esta carpeta contiene toda la lógica de nuestra aplicación.
src/components : esta carpeta contiene todos los componentes de nuestra aplicación.
src/models : esta carpeta contiene todos los modelos DB de nuestra aplicación.
src/lib/ : esta carpeta contiene UTILS y ayudantes utilizados en toda nuestra aplicación:
client : esta carpeta contiene todas las utilidades que son solo para el cliente, generalmente utilizadas por los componentes del cliente. Contiene principalmente ganchos
server : esta carpeta contiene todas las utilidades que son solo para el servidor, para su uso dentro de los componentes del servidor y las acciones del servidor. También contiene los esquemas de DB dentro de db/schema
shared : esta carpeta contiene todas las utilidades que se comparten entre el servidor y el cliente, se pueden usar en cualquier lugar de la aplicación.
biome.json : este archivo contiene la configuración de Bioma para habilitar el autoformating.
pnpm-lock.yaml : este archivo contiene el bloqueo de dependencias para el repositorio.
tsconfig.json : este archivo contiene la configuración para TypeScript, que utilizan todos los paquetes subyacentes
| Nominar | role |
|---|---|
SESSION_SECRET | Cadena de longitud aleatoria de 32 chars utilizada para codificar la ID de sesión |
REDIS_HTTP_URL | La URL a la conexión a Redis HTTP para una tienda de clave/valor |
DATABASE_URL | La URL a la base de datos de conectar a la base de postres |
REDIS_HTTP_USERNAME | URL del servidor de archivos local para almacenar valores clave |
REDIS_HTTP_PASSWORD | URL del servidor de archivos local para almacenar valores clave |
GITHUB_CLIENT_ID | ID de cliente GitHub almacenada para nuestra aplicación utilizada para autenticar a los usuarios con GitHub |
GITHUB_PERSONAL_ACCESS_TOKEN | Token de cliente GitHub almacenado para nuestra aplicación utilizada para autenticar a los usuarios con GitHub |
GITHUB_REDIRECT_URI | URL para redirigir cuando un usuario ha sido autenticado |
GITHUB_SECRET | Secreto de Github almacenado para nuestra aplicación |