Cómo Empezar?
Requisitos
Sección titulada «Requisitos»Stack de tecnologías
Sección titulada «Stack de tecnologías»- Drizzle
- LibSQL
- Turso
Recursos
Sección titulada «Recursos»Como empezar a desarrollar
Sección titulada «Como empezar a desarrollar»Lo primero es clonar o hacer fork del repositorio, si lo que quieres es colaborar puedes leer el /about-me/contributing para saber como hacerlo.
Ahora toca instalar las dependencias y configurar el entorno de desarrollo.
-
Instalar las dependencias
Ventana de terminal npm install -
Configurar las variables de entorno, para ello crea un archivo
.env
en la raíz del proyecto con las variables explicadas en la sección que variables de entorno necesito? -
Ejecutar el push de la base de datos
Ventana de terminal npm run db:push -
Iniciar el servidor en local
Ventana de terminal npm run dev
Que Variables de Entorno necesito?
Sección titulada «Que Variables de Entorno necesito?»Crear un archivo .env
en la raíz del proyecto con las siguientes variables
PRIVATE = '{ "discord": { "token": "", "applicationId": "" "oAuthSecret": "" "oAuthCallback": "/auth0/discord" "guildOwner": "" "userOwner": "" }, "api": { "secretKey": "", "urlClientDomain": "", }, "sql": { "syncUrl": "", "token": "" },}'PORT = '3000'PUBLIC_URL_API = 'http://localhost:3000',PUBLIC_APPLICATION_ID = '',
PRIVATE.discord
Sección titulada «PRIVATE.discord»Lo primero es tener un bot creado en discord, para ello puedes usar el bot de Discord Developer Portal o puedes seguir el tutorial de Discord para crear un bot.
- token: token de autenticación de discord
- applicationId: id de la aplicación de discord
- oAuthSecret: secreto de autenticación de discord para OAuth
- guildOwner: id del servidor donde se encuentra el bot (el bot debe estar en el servidor)
- oAuthCallback: callback de OAuth, por defecto es
/auth0/discord
esto es la sub-ruta que se configura en discord portal -> OAuth2 -> Redirect URLs - userOwner: id del usuario que tiene el rol de administrador del bot (el usuario debe ser el dueño del bot)
PRIVATE.api
Sección titulada «PRIVATE.api»Esto es para comunicar el front con el back.
- secretKey: secreto para el api, te recomendamos usar un hash generado con comando porque toda la aplicación depende es esto.
- urlClientDomain: dominio del cliente, en local sera
http://localhost:4321
PRIVATE.sql
Sección titulada «PRIVATE.sql»En este caso utilizamos Turso y Drizzle como ORM, pero internamente se usa libSQL, ahi tienes mas información sobre que entorno usar.
- syncUrl: url de la base de datos
- token: token de la base de datos
Puerto en el que se ejecutara el servidor en local
PUBLIC_URL_*
Sección titulada «PUBLIC_URL_*»Estas variables son utilizadas para configurar las URLs del Frontend.
-
PUBLIC_URL_API: url de la aplicación para el api
-
PUBLIC_APPLICATION_ID: id de la aplicación de discord, esto se usa para construir el link de OAuth y join bot de discord