馃毀 WIP
Para poder ejecutar este proyecto es necesario tener instalado node.js >= v18, se recomienda instalar la versi贸n LTS. Al instalar node.js por defecto se instala el manejador de paquete npm
se recomienda la versi贸n >= 8.
Es recomendable utilizar nvm
Para asegurarse que ambas herramientas est茅n instaladas deber谩 ejecutar los siguientes comando y recibir salidas parecidas a las siguientes:
$ node --version
# v18.12.1
$ npm --version
# v9.2.0
Adicionalmente a estas herramientas del ecosistema de javascript es necesario tener instalado el cli de git
dentro de la computadora para ello puede revisar la documentaci贸n. Luego puede verificar la instalaci贸n usando el siguiente comando:
$ git --version
# git version 2.37.1 (Apple Git-137.1)
Adicionalmente, se recomienda instalar un browser como alguno basado en Chromiu y un editor de c贸digo como Visual Studio Code.
Una vez configurado el ambiente de trabajo, lo siguiente ser谩 clonar el repositorio para ello puede hacerlo utilizando el siguiente comando:
git clone [email protected]:Avila-Tek/avila-tek.git
Despu茅s se seguir las instrucciones del cli deber铆a tener una carpeta llamada los-avila-tek
en la cual encontrar谩 el c贸digo fuente del proyecto.
Una vez clonado, el repositorio es necesario crear agregar las variables de entorno del proyecto, para esto puede comunicarse con el l铆der t茅cnico del proyecto.
Para instalar las dependencias se utilizar谩 el manejador de paquetes npm
. Es necesario que se se encuentre dentro de la carpeta del proyecto si se quedo en el paso anterior podr谩 hacerlo haciendo cd los-avila-tek
, para instalar las dependencias entonces se ejecuta el siguiente comando:
npm install
Una vez instaladas las dependencias deber谩 ejecutar el siguiente comando para montar el servidor de desarrollo.
npm run dev
馃毀 WIP
- Usa nombres descriptivos para las variables, constantes, funciones y clases.
- Usa camelCase para las variables y las funciones.
- Usa PascalCase para las clases e interfaces.
- Evita abreviaturas innecesarias y nombres demasiado largos.
- Usa nombres de archivo y directorio que reflejen su contenido y utilicen min煤sculas.
- Usa indentaci贸n de 2 espacios.
- Usa punto y coma al final de cada declaraci贸n.
- Usa comillas simples para las cadenas de texto.
- Usa la sintaxis de template literals para construir cadenas de texto concatenadas.
- Usa las sintaxis de ESNext donde sea posible.
- Usa la sintaxis de destructuring para desempaquetar objetos y arrays.
- Respeta las reglas de eslint configuradas.
- Usa tipos expl铆citos siempre que sea posible.
- Usa interfaces para definir estructuras de datos complejas.
- Usa tipos de uni贸n para las propiedades que pueden ser de diferentes tipos.
- Usa tipos gen茅ricos para hacer que tus funciones y clases sean m谩s flexibles.
Usa funciones de flecha para funciones cortas y simples. Usa nombres de funci贸n que describan claramente lo que hace la funci贸n. Usa par谩metros opcionales con valores por defecto para simplificar las funciones. Usa funciones que devuelvan una sola cosa y no tengan efectos secundarios.
- Usa componentes funcionales siempre.
- Usa el hook useState() para manejar el estado local de los componentes.
- Usa el hook useReducer() para manejar el estado si se tienen m谩s de 5 useState().
- Usa el hook useEffect() para manejar los efectos secundarios en los componentes.
- Evitar hacer propdrilling, si es necesarios pasar un props en mas de 4 niveles; use un contexto para ello
- Usa la sintaxis de destructuring para acceder a las propiedades de los objetos.
- Usa comentarios para explicar el c贸digo complejo.
- Usa el linter para comprobar que tu c贸digo cumple con los est谩ndares de estilo y calidad.
- Usa pruebas unitarias para asegurar la calidad y funcionalidad de tu c贸digo. Estas son solo algunas pautas generales, pero recuerda que lo importante es ser consistente en tu estilo de c贸digo y trabajar en equipo para establecer las convenciones adecuadas para tu proyecto.
Como instalo una dependencia
Para instalar un paquete de npm es necesario utilizar le siguiente comando:
npm i --workspace=<path/to/project> <package-name>